我的 Knockout 应用程序中有一个 observableArray,我想知道如何才能仅选择数组中的目标对象。
我有以下代码,用于计算数组中所有“值”的总和,但我希望能够仅选择数组中的第二个“值”。
self.csu_treatment_inputs = ko.observableArray([
{
value: ko.observable(10),
image: ko.observable('')
},
{
value: ko.observable(120),
image: ko.observable('')
},
{
value: ko.observable(160),
image: ko.observable('')
},
]);
self.totaltest = ko.computed(function () {
var total = 0;
ko.utils.arrayFilter(self.value_inputs(), function (item) {
total += parseFloat(ko.utils.unwrapObservable(item.value));
});
return total;
});
最佳答案
要绑定(bind)到第二个值,请使用以下代码:
<span data-bind='text: csu_treatment_inputs()[1].value'></span>
示例: http://jsfiddle.net/v6T5T/
如果您想从 javascript 访问元素,请使用:
total+= parseFloat(self.test_values()[i].value());
关于javascript - Knockout 从 observableArray 获取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23423891/