knockout.js model 更改后为什么view没刷新?

zhangwei139559 zhangwei139559 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
 <script type="text/javascript">


function ViewModel(options) {
var sss = [{ id: '11',name:'name1' }, { id: '22',name:'name2'}]
var self = this;
self.sbs = ko.observableArray({
id: ko.observable(),
name: ko.observable()
};);
self.replacedata = function (data) {
for (var i = 0; i < self.sbs().length; i++) {
var existing = self.sbs()[i];
if (existing.id == data.id) {
self.sbs.replace(existing, data);

}
}

}
}



Object.prototype.clone = function () {
var obj = {};

for (var p in this)

obj[p] = this[p];

return obj;

};
$(function () {
$("#Button1").click(function () {

$.each(viewModel.sbs(), function (n, value) {
existing = value;
if (value.id == '11') {
value.name = "1212";
viewModel.sbs.replace(existing, value);
//return false;
}
});
});

ko.applyBindings(viewModel);
});

</script>
</head>
<body>
<form id="form1" runat="server">
<input id="Button1" type="button" value="button" />
<table>
<thead>
<tr>
<th>
</th>
<th>
检查项目
</th>
<th>
检查结果
</th>
<th>
判定
</th>
</tr>
</thead>
<tbody data-bind='foreach: sbs'>
<tr>
<td>
<input type="text" data-bind="value: name" />
</td>
</tr>
</tbody>
</table>

</form>
</body>
<ml>


sbs中id=11的name变化了,为什么页面没刷新???
...全文

相关推荐

评论 1
收藏 已收藏
分享
返回顶部
zhangwei139559
JavaScript 87,983 成员 224,681 内容