Я пытаюсь использовать knockout для создания довольно простой привязки, но у меня проблемы с доступом к переменной $item
из jquery.tmpl.Я продолжаю получать "$item
не определено", когда я применяю привязки.
Я делал это раньше, поэтому я знаю, что это можно сделать, но я не могу понять, почему это не работает в этом случае.Что интересно, если я удаляю templateOptions:{parentItem: $item}
, то все работает как положено.
Я включил следующие файлы
<script type="text/javascript" src="Extension/resources/jquery.1.6.1.js"></script>
<script type="text/javascript" src="Extension/resources/jquery.tmpl.js"></script>
<script type="text/javascript" src="Extension/resources/knockout-1.2.1.js"></script>
Мой шаблон и привязки выглядят так
<script type="text/html" id="itemTemplate">
<span data-bind="text:title"></span>
</script>
<div class="filterResults">
<span data-bind="text:message"></span>
# of items: <span data-bind="text:contentItems().length"></span>
<table cellspacing="0">
<tr data-bind="template: { name: 'itemTemplate', foreach: contentItems,
templateOptions:{parentItem: $item}
}"> </tr>
</table>
</div>
И я выполняю привязку, используя:
//viewModel contains a contentItems observableArray
ko.applyBindings(viewModel, $('.filterResults')[0]);