2

我是 Knockout.js 的新手。我通过从 ajax 源加载数据并使用 foreach 循环创建数据表来实现 Knockout.js。我遵循的教程在这里

http://www.dotnetcurry.com/ShowArticle.aspx?ID=933

我的问题是,由于我的应用程序的性质,我发现使用网格组件从服务器端更好地服务第一个负载,我只希望 Knockout.js 处理“添加”行,“更新”一个行并“删除”一行。

我的问题是,

1)如何用html表中的默认数据替换“第一次”加载并填充文章中的lookupCollection :ko.observableArray() ?2) 与#1 相关。如果第一次加载,带有数据的表格布局是从服务器端构造的,那么如何将“foreach”绑定到网格以便可以在 lookupCollection 上执行“添加”?

再次感谢,我是新手,我必须在这里遗漏一些关键概念。

4

1 回答 1

1

一种方法是将您的初始数据传递到您的视图模型中。由于您使用的是 asp.net,它看起来像这样:

//Dump raw data into javascript variable
var data = @Html.Raw(ViewBag.Data);

function ViewModel(data) {
    var self = this;
    //Unpack raw data
    self.lookupCollection = ko.observableArray(data.lookupCollection);
}

//initialize view model
var viewModel = new ViewModel(data);
ko.applyBindings(viewModel);
于 2013-08-27T15:03:51.553 回答