如何将knockout的Observable数组长度绑定到html元素

时间:2014-05-06 00:02:43

标签: javascript knockout.js

Supose我有以下viewmodel

var ViewModel = function() {
   this.fruits = ko.observableArray(["Apple", "banana", "orange"]);
};
ko.applyBindings(new ViewModel());

我希望能够像其他viewmodel属性那样在html上绑定可观察数组的长度。

<span data-bind="text: fruits.length"></span>

对于这个purpuse,我尝试将可观察数组转换为简单数组,但没有成功

span data-bind="text: fruits().length"></span>

我明白这应该很容易,因此必须遗漏一些东西。能不能指出我正确的方向。

2 个答案:

答案 0 :(得分:3)

不确定您遇到了什么问题,但这样可以正常工作:

<span data-bind="text: fruits().length"></span>

Working example

答案 1 :(得分:0)

我能够发现问题的原因。在我的原始代码中,我有以下

<span data-bind:"text= venues().length"></span>

使用冒号而不是等号来表示html。正如Martin Booth指出的那样,其他一切都是正确的。