我正在使用MVC + Razor,并且尽可能希望留在强大的世界中。
因此希望使用Razor语法迭代我的视图模型,并通过数组索引将数据绑定到knockout。
这可行吗?到目前为止,我看到的所有示例都排除了for-each
模板的使用。
@Html.TextBoxFor(_ => _[i],new {@readonly = "readonly", data_bind = string.Format("value:[{0}]",i) });
强类型模型是一个数组,上面是从for循环内部迭代的。
答案 0 :(得分:0)
不管怎么说,这要归功于@nemesv的原始jsfiddle:
<input type="text" data-bind="value: $data[0].name"></input>
<input type="text" data-bind="value: $data[1].name"></input>
<input type="text" data-bind="value: $data[2].name"></input>
使用以下javascript文件。
var ViewModel = ko.observableArray( [{
name: 'name1'
}, {
name: 'name2'
}, {
name: 'name3'
}]
);
ko.applyBindings(ViewModel);
如果没有它, $ data 是必需的,它不起作用。我仍然不确定为什么会这样。