我有这个jSon:
[
{ "value": "13", "text" : "fdg" },
{ "value" : "12", "text" : "fdg" },
{ "value" : "11", "text" : "fdg" },
{ "value" : "10", "text" : "dsf" },
{ "value" : "9", "text" : "testing" },
{ "value" : "8", "text" : "test" },
{ "value" : "7", "text" : "fdg" }
]
输入字段为:
<input type="text" name="productos" id="productos" class="form-control" />
我的js代码是:
var cities = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('text'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: 'url_to_json'
});
cities.initialize();
elt = $('#productos');
elt.tagsinput({
itemValue: 'value',
itemText: 'text',
typeaheadjs: {
name: 'productos',
displayKey: 'text',
source: cities.ttAdapter(),
}
});
但是当选择时,例如,文本&#34; testing&#34;而不是返回值9(当我得到输入val()时)它返回值5.同样的情况发生在我选择其他项目时。我无法在代码中找到问题。这是什么回归?
我认为重要的是要注意,如果我将itemValue的值更改为另一个(也是在jSon数据中),它就不起作用。我必须将值名称保留为itemValue。
谢谢, 弗吉尼亚