我对knockout.js很新,但是,我一直很乐意在我的ASP.NET MVC 4项目中使用它,直到我遇到这个困扰我一段时间的障碍,似乎无法把我放在手指放在上面.
我正在处理的场景需要几个位置数据组合(区域,国家,城市),即级联下拉列表,这在输入新数据时不是问题,但我在尝试时遇到了问题编辑保存的数据.
数据采用JSON格式,带有嵌套数组,如下所示(为简化说明而缩写):
var newData =
[
{
"ID":1,
"Name":"Australia and New Zealand",
"Countries":[
{
"ID":13,
"Name":"Australia",
"Cities":[
{
"ID":19,
"Name":"Brisbane"
},
{
"ID":28,
"Name":"Cairns"
},
...
Run Code Online (Sandbox Code Playgroud)
我怀疑我无法正确加载数据(或者更清楚地绑定它),因为我无法访问Region子阵列(包含Region的国家/地区)和Countries子阵列(包含国家/地区的城市) .
然后是预先填充选项的问题,部分工作,viewmodel加载行数,但不选择任何东西.
这是VM:
var existingRows = [
{
"Region": 1,
"Country": 13,
"City": 19
},
{
"Region": 1,
"Country": 158,
"City": 3
}];
var Location = function (region, country, city) {
var self = this;
self.region = ko.observable(region);
self.country = ko.observable(country);
self.city = ko.observable(city);
// Whenever the region …Run Code Online (Sandbox Code Playgroud)