Model view controller MVC Knockout.js
在这个链接的帮助下,我能够创建一个动态表单Model view controller MVC Knockout.js,model-view-controller,knockout.js,Model View Controller,Knockout.js,在这个链接的帮助下,我能够创建一个动态表单 var viewModel = { users : ko.observableArray(), addUser : function () { this.users.push({ name : ko.observable(), choicestring : ko.observable() }); } }; viewModel.addUser();
var viewModel = {
users : ko.observableArray(),
addUser : function () {
this.users.push({
name : ko.observable(),
choicestring : ko.observable()
});
}
};
viewModel.addUser();
ko.applyBindings(viewModel);
我的问题是我不知道如何删除我添加的控件,
我该如何使用Knockout.js实现这一点
感谢并致以最诚挚的问候通常是这样的(对webapi有效,对MVC也有效):
Knockout的可观察数组有一个
.remove(item)
函数为您执行此操作。因此,您可以将其添加到视图模型中:
removeUser : function ( user ) {
this.users.remove( user );
}
然后像这样把它连接起来:
<ul data-bind="foreach: users">
<li>
<span data-bind="text: name"></span>
(<a href="#" data-bind="click: function () { $parent.removeUser( $data ); }">Remove</a>)
</li>
</ul>
<button data-bind="click: addUser">Add user</button>
-
()
添加用户
JSFIDLE示例:您能提供更多详细信息吗?您打开了一个带有2个输入字段的表单,想要单击“保存”按钮(将新用户添加到用户数组),然后想要表单消失吗?您好,infadelic,在这组代码中,我可以添加新控件,现在我想在单击旁边的移除按钮时从数组中移除控件。
<ul data-bind="foreach: users">
<li>
<span data-bind="text: name"></span>
(<a href="#" data-bind="click: function () { $parent.removeUser( $data ); }">Remove</a>)
</li>
</ul>
<button data-bind="click: addUser">Add user</button>