KO网格无法保存编辑单元格中的数据-使用Plunker
KO Grid unable to save data from edited cell - with Plunker
我有一个Asp.Net MVC网站,我已经开始使用knockoutjs-kogrid来显示数据网格。
对于一个特定的网格,我希望用户能够编辑电子邮件地址列。单击保存按钮后,编辑后的值应保留到数据库中。
我可以显示网格,在选择一行时,用户可以在所需的单元格中键入。我的问题是,我还没有弄清楚如何引用更改的单元格值。
以下是我的网格选项的定义:
var emailCellTemplate = '<div><input type='"text'" data-bind='"visible: $parent.selected(), value: $parent.entity[$data.field]" /><span data-bind='"visible: !$parent.selected(), text: $parent.entity[$data.field]'"></span></div>'
this.gridOptions = {
height: 200,
afterSelectionChange: function () { return true; },
data: self.workflowRules,
enablePaging: true,
pagingOptions: self.pagingOptions,
filterOptions: self.filterOptions,
selectWithCheckboxOnly: true,
selectedItems: self.selected,
canSelectRows: true,
displaySelectionCheckbox: true,
columnDefs: [{ field: 'ReceivePortName', displayName: 'Receive Port', width: 130 },
{ field: 'MessageType', displayName: 'Message Type', width: 400 },
{ field: 'TriggerSource', displayName: 'Source', width: 150 },
{ field: 'TargetEmailAddress', displayName: 'Email', width: 180, cellTemplate: emailCellTemplate },
{ field: 'AssignedToName', displayName: 'Assigned To', width: 140 },
]
};
$parent.entity[$data.field]非常适合选择从数据库加载的值,但不会给我编辑后的值。当我在点击保存到数据库按钮时运行的js代码上放置断点时,我确实可以在WorkflowRules.TargetEmailAddress中看到编辑后的值,但我还没有想好如何绑定到它。
我创建了一个plunk来帮助说明:https://plnkr.co/edit/Ibc0WZwyb4melgNDzcUo
有人能告诉我如何设置我的电子邮件CellTemplate吗?
感谢您的评论,我现在已经找到了错误的原因。
问题出现在javascript控制器的savetoDatabase函数中。控制器确实定义了一个可观察的this.workflowRules = ko.observableArray(vm.WorkflowRules);
,但在saveToDatabase函数中,它在调用服务器控制器var jsSaveModel = ko.toJS(vm);
之前转换为JSON时使用了服务器视图模型
为了解决这个问题,我添加了一行额外的代码,在转换为JSON之前,用可观察的内容更新vm的WorkflowRules数组,所以我现在有了
vm.WorkflowRules = this.workflowRules();
var jsSaveModel = ko.toJS(vm);
- 对API数据使用声明性绑定
- 异步获取数据使用JavaScript同步获取数据
- 如何在字符串中的值之前删除字符串中的动态数据?/ 使用 Lodash 的 _.trimStart 与动态数据
- 如何在IE CORS中发送POST数据(使用XDomainRequest)
- <img src=“;数据:..使用gzip文件
- ng使用angular中的json数据使用optgroup重复select
- KO网格无法保存编辑单元格中的数据-使用Plunker
- 使用C3.js对不同的数据使用相同的json键
- 如何从html元素中获取javascript var数据?(使用canvasjs)
- 对从Ajax返回的数据使用Jquery方法,不打印数据
- 对 svg 数据使用
- JSON 数据 - 使用 Javascript/Jquery 按星期几(周日、周一、周二、周三、周四、周五、周六)分组
- 通过PHP将动态mp3数据使用到嵌入式播放器中不起作用
- 如何在两个
之间共享数据?使用AngularJS和温泉UI - 如何从图表谷歌脚本的电子表格中检索数据.(使用 HTML 服务)
- 保存Chrome扩展程序数据(使用LocalForage)
- 如何在 AngularJS 中对来自另一个范围的数据使用过滤器
- 我的 JSON 数据使用 AJAX 加载了两次,它只应该在单击时加载一次
- 如何使用表单中的数据使用 js 制作表格
- 我如何通过jsonencode数据使用Javascript选择下拉值