小编Jus*_*son的帖子

KnockoutJS自定义绑定typeahead.js失去allBindingsAccessor函数

我的目标:使用KnockoutJS我有一组输入文本字段,用户可以输入他们的产品名称和typeahead.js将为每个文本框提供自动建议.可以动态添加或删除更多这些文本字段.

看实例(JS Fiddle): http ://jsfiddle.net/justosophy/5Z9We/

问题是: Typeahead适用于初始文本字段,但仅适用于动态字段.淘汰自定义绑定allBindingsAccessor()未定义,因此无法保存该值.

错误:

TypeError: string is not a function
Run Code Online (Sandbox Code Playgroud)

HTML:

<div data-bind="foreach: products">
    <div class="product">
        <label>Enter Product Name:</label>
        <input type="text" class="text-input product-search" data-bind="typeahead: productName, value: productName, productNameVal: productName, productIDVal: productID, valueUpdate: 'afterkeydown'" />
        <a class="btn btn-danger" data-bind="click: $root.removeProduct" title="remove">remove</a>
    </div>
</div>
<a class="btn btn-primary" data-bind="click: addProduct">Add another product</a>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

var my = {}, i;
// Create two initial entry boxes
my.initialData = [];
for (i = 2; i !== 0; i -= 1) …
Run Code Online (Sandbox Code Playgroud)

typeahead knockout.js typeahead.js

7
推荐指数
1
解决办法
4004
查看次数

标签 统计

knockout.js ×1

typeahead ×1

typeahead.js ×1