1

我有两个选择列表。我使用 ko.utils.arrayFilter 方法来更改我的选择列表。当我用它来做“添加字段”或“删除字段”时,一切都很好。

但是当我更改视图模型时,然后我单击“添加字段”或“删除字段”,选择列表将无法正确更新。

        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();


        };

我的示例代码在这里http://jsfiddle.net/knupA/

绑定选择列表时我做错了吗?!

谢谢~

4

1 回答 1

1

我已经更新了你的jsFiddle,它似乎工作。我将您的方法更改为从数组中选择以使用 Knockout 方法,并且我删除了您的测试方法,因为当右侧下拉列表中没有任何内容被选择时会调用该方法,所以会爆炸。

var selectedField = ko.utils.arrayFirst(self.availableFields(), function(item){
                return item.FieldNameId == idx;
            });
于 2013-02-01T10:46:39.317 回答