我有一个使用Knockout.js构建的选项列表元素。我正在尝试将Knockout.js $ element 数据绑定变量传递给Javascript函数:
<!-- ko with: dataList -->
<div class="container">
<div class="setting topic" data-bind="deselectClick: enabled, css: { disabled: enabled() != true, locked: isLocked() == true }">
<div class="icon" data-bind="style: { backgroundColor: selectedItem().value == '' ? '#1a1a1a' : $parents[1].color }"> </div>
<div class="select" data-bind="deselectClick: enabled, click: changeSelect, text: selectedItem().text">Loading...</div>
</div>
<ul class="selectOptions topicSelects" data-bind="foreach: items, style: { display: showOptions() ? 'block' : 'none' }">
<li data-bind="text: $parent.checkText($element, name), click: $parent.selectChanged">Loading...</li>
</ul>
</div>
<!-- /ko -->
当我这样做时,浏览器调试器会显示一个错误,指示 $ element 未定义。有人见过这种情况吗?如果是这样,我该如何解决这个问题?
答案 0 :(得分:1)
问题是由于旧版KnockoutJS造成的。 $ element是一项新功能。我将KnockoutJS软件包更新到最新版本,现在可以使用了。