На данный момент лучший выбор — использовать функцию диапазона, которая принимает начальное и конечное значения и возвращает массив с этими числами. Я, например, использую функцию диапазона в библиотеке underscore.
var numArray = _.range(0, 5); //returns [0, 1, 2, 3, 4]
Используйте это с нокаутом вот так.
<div data-bind="template: { name: 'myTemplate', foreach: _.range(0, 5) }">
</div>
Внутри шаблона вы можете зафиксировать текущий номер с помощью «$ data» и использовать его как индекс.
<div>Index: <span data-bind="text: $data"></span></div>
<div>My Object Prop: <span data-bind="text: viewModel.MyObjects[$data].MyProp"></span></div>
Если вы хотите выполнить простую итерацию, как в предыдущем примере, вам следует выполнять итерацию непосредственно по объекту вместо этого подхода с индексацией массива. Однако, если вам нужно сделать что-то необычное, эта техника поможет.
Например, если вам нужно отобразить список объектов в наборах по 2, вы можете сделать это.
<div data-bind="foreach: _.range(0, viewModel.MyObjects().length, 2)">
<div>
<div data-bind="template: { name: 'myTemplate', data: viewModel.MyObjects()[$data] }"></div>
<div data-bind="template: { name: 'myTemplate', data: viewModel.MyObjects()[$data + 1] }"></div>
</div>
</div>
person
Malgaur
schedule
20.04.2012
$('.selector').change(function() {...});
. Чтобы получить выбранное значение, просто выполните$('.selector').val();
. Если это в основном то, что вы ищете, я могу отправить более подробный ответ... надеюсь, это поможет. - person jyore   schedule 25.08.2011