Knockout.js 我有两个带有剔除绑定的选择列表,但是当我更改视图模型的值时,选择列表不会正确更新
我有两个选择列表。我使用ko.utils.arrayFilter方法来更改我的选择列表。 当我使用它来添加字段或删除字段时,一切都很好 但是,当我更改viewmodel时,单击“添加”字段或“删除”字段,选择列表将无法正确更新Knockout.js 我有两个带有剔除绑定的选择列表,但是当我更改视图模型的值时,选择列表不会正确更新,knockout.js,Knockout.js,我有两个选择列表。我使用ko.utils.arrayFilter方法来更改我的选择列表。 当我使用它来添加字段或删除字段时,一切都很好 但是,当我更改viewmodel时,单击“添加”字段或“删除”字段,选择列表将无法正确更新 self.test = function(){ var idx = self.rightSeleted(); var selectedField = $.grep(self.availableFields
self.test = function(){
var idx = self.rightSeleted();
var selectedField = $.grep(self.availableFields(), function(n, i){
return n.FieldNameId == idx;
});
debugger;
var currentValue = selectedField[0].IsAsc();
};
我的示例代码在这里
绑定选择列表时我做错了什么吗
谢谢~我已经更新了你的,而且似乎很有效。我将您的方法更改为从数组中选择,以使用敲除方法,并删除了您的测试方法,因为在右侧下拉列表中没有选择任何内容时,会调用该方法,因此会发生爆炸
var selectedField = ko.utils.arrayFirst(self.availableFields(), function(item){
return item.FieldNameId == idx;
});
我已经更新了你的,它似乎起作用了。我将您的方法更改为从数组中选择,以使用敲除方法,并删除了您的测试方法,因为在右侧下拉列表中没有选择任何内容时,会调用该方法,因此会发生爆炸
var selectedField = ko.utils.arrayFirst(self.availableFields(), function(item){
return item.FieldNameId == idx;
});