如何在knockout js中访问'foreach:'绑定的大小>

blu*_*sky 7 javascript jquery knockout.js

在本文档中:http://knockoutjs.com/documentation/foreach-binding.html使用'foreach'绑定实现迭代:

<tbody data-bind="foreach: people">
Run Code Online (Sandbox Code Playgroud)

是否可以通过javascript/jquery访问此绑定的大小?

就像是 : alert('People size is '+people.size);

我需要访问大小才能进行简单的验证检查.

Pau*_*tti 14

你的意思是在foreach中吗?您可以在循环中调用父级,然后再次访问可观察数组:

$parent.people().length
Run Code Online (Sandbox Code Playgroud)

或者您绑定视图模型的任何地方,您都可以调用:

people().length
Run Code Online (Sandbox Code Playgroud)

或者,您可以将计算的observable添加到视图模型中.在视图模型代码中,将其分配给名为self的var,然后:

var peopleCount = ko.computed(function()
{
    return self.people().length;
}
Run Code Online (Sandbox Code Playgroud)