[英]How to do DOM manipulation in Knockout JS after ajax call
我知道您不应该使用Knockout JS在模型内进行DOM操作,建议的方法是执行ko.bindingHandler.myDomManipulatingHandler。 但是,如果模型中的方法调用ajax,然后必须同时更新数据和操作DOM怎么办?
我该怎么做,但仍保持干净的分隔?
ViewModel = function ()
{
var self = this;
self.saveToServer = function ()
{
$.ajax(
{
url: "url to server",
success: function ()
{
// data change code
// dom manipulation code
}
});
};
};
这很大程度上取决于您需要执行的特定DOM操作,但似乎您可以只更新相应的可观察对象。
var self = this,
self.data = ko.observableArray();
/* snip */
success: function () {
ko.utils.arrayForEach(self.data(), function () {
/* update values here */
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.