问题描述:
我有一个三行表。第一行包含一个下拉菜单。当用户选择下拉选项时,应在当前最后一行下方生成一个新行。如何调整此代码以使仅当用户选择当前最后一行的下拉选项而不是任何其他行时才生成新行?
JSFiddle:http: //jsfiddle.net/JPVUk/13/
var ViewModel = function() {
var self = this;
self.items = ko.observableArray([{comment:'first comment', amount:0}]);
self.addNewItem = function(){
self.items.push(new Item('',0));
};
}
var Item = function(comment, amount) {
var self = this;
self.comment = ko.observable(comment);
self.amount = ko.observable(amount);
};
vm = new ViewModel()
ko.applyBindings(vm);
我正在努力做的事情:
因此,由于我想将更改事件绑定到最后一行,因此我是这样处理它的:
<select class="input-small" data-bind="items()[items.length-1] ? event: { change: $root.addNewItem }">
然而,这是行不通的。有什么想法吗?