我有一个可观察的数组:
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>
但这只会返回一个null。
这样做的正确语法是什么?
编辑:修复了下面指出的复制和粘贴错误。
答案 0 :(得分:7)
除了使用错误的属性名称developerexampledata
而不是myObservableArray
之外,您的代码就可以了。
答案 1 :(得分:1)
这可能只是在您填充数组之前尝试访问数组的第一项。
使用简单的if语句包装数据绑定控件以首先检查:
<!-- ko if: (myObservableArray().length > 0) -->
<div data-bind="text: myObservableArray()[0].price"></div>
<!-- /ko -->
答案 2 :(得分:0)
错误的方式.....
self.getvaluefrom = function (a ,b)
try catch返回有效值
然后添加data-bind="text:getvaluefrom(a,b)
如果该项不在数组中,则会出现ko错误。...
ko html仅显示数组的静态有效条目。...