Gel*_*Luo 2 javascript web knockout.js
我正在尝试创建一个带有表单的网页,一旦用户更改任何字段,立即进行验证和更新提交,而不是让用户单击提交按钮.我正在使用Knockout.js和映射插件.我知道我可以通过为每个原始字段创建一个计算字段来实现这一点,但是这种工作是tedius和dumb,是否有良好的做法来创建一个通用监听器来监听任何字段中的任何更改并分别更新后端?
小智 5
要订阅任何更改,您可以使用ko.toJS()方法.实际上,它允许遍历对象图并展开可观察对象.正如您可能知道的,当您使用ko.computed时,它会订阅所有可观察字段的读取,并在每次更改时重新评估.所以如果你使用这样的代码:
ko.computed(function() {
ko.toJS(viewModel);
// update data on server
});
Run Code Online (Sandbox Code Playgroud)
此外,您应该注意这段代码将在初始化后立即更新服务器上的数据.这很容易避免.请查看此示例:http://jsfiddle.net/UAxXa/embedded/result/
此外,我认为您可能只想将更改的数据发送到服务器.你可以加入ko.editbales插件(https://github.com/romanych/ko.editables)和一些KO引擎盖下的知识.请查看此示例:http://jsfiddle.net/romanych/RKn5k/
我希望它可以帮助你.
| 归档时间: |
|
| 查看次数: |
1068 次 |
| 最近记录: |