0

我有以下 KnockoutJS 代码,以便为地址表单编辑器进行数据绑定,其中我可以有 4 种地址类型(“家”、“办公室”等)。

http://jsfiddle.net/mxgFQ/1/

现在一切都很好,但是 selectedAddress 被硬编码为索引 0

self.selectedAddress = ko.observable(self.addresses[0]);

而不是这样做,我想选择第一个填充数据的地址对象。

关于如何做到这一点的任何线索?

欣赏。

4

1 回答 1

1

Knockout 的实用程序功能提供了非常方便的arrayFirst功能,这使得它变得简单:

self.selectedAddress = ko.observable(
        ko.utils.arrayFirst(self.addresses(), function(item) {
            return item.address1().length > 0;
        }));

这是更新的小提琴

这是KO 实用功能的方便参考:

于 2012-07-23T21:17:33.557 回答