2013-04-18 48 views
12

我有一个观察的数组:如何通过一个基因敲除可观察阵列中的索引来访问一个对象?

var myObservableArray = ko.observableArray([ 
    { name: "Car", price: "9999" }, 
    { name: "Shoes", price: "20" }, 
    { name: "Paper", price: "1" } 
]); 

我试图访问的第一个项目的价格在数组中。

<div data-bind="text: myObservableArray()[0]"></div> 

显示:

[object Object] 

我已经试过:

<div data-bind="text: myObservableArray()[0].price"></div> 

但是,这只是返回一个空。

这样做的正确语法是什么?

编辑:修复了下面指出的复制和粘贴错误。

+0

这是你怎么做。如果它不起作用,你的代码还有其他问题。 –

回答

6

除了使用错误的属性名称developerexampledata而不是myObservableArray之外,您的代码还不错。

这里是一个working fiddle

+0

是的,这是一个复制和粘贴错误,当我提出这个问题,我的坏。我欣赏小提琴虽然;至少我知道我的语法正确,我的问题在别处。我会接受你的答案,并多挖一点,弄清楚我哪里可能会出错。 – Eric

1

这可能仅仅是到你想被填入前阵访问数组的第一个项目。

包裹用一个简单的数据绑定控件if语句首先检查:

<!-- ko if: (myObservableArray().length > 0) --> 
    <div data-bind="text: myObservableArray()[0].price"></div> 
<!-- /ko --> 
相关问题