Javascript 剑道界面中的自动完成过滤
我需要筛选已选定的国家/地区。我已经从下面的链接编写了代码。Javascript 剑道界面中的自动完成过滤,javascript,jquery,asp.net-mvc-3,kendo-ui,Javascript,Jquery,Asp.net Mvc 3,Kendo Ui,我需要筛选已选定的国家/地区。我已经从下面的链接编写了代码。 当我动态定义数据源时,我没有得到记录 var countriesDS = new kendo.data.DataSource({ transport: { read: { url : "/Home/Countries", type: "POST", dataType: "json" } }, schema
当我动态定义数据源时,我没有得到记录
var countriesDS = new kendo.data.DataSource({
transport: {
read: {
url : "/Home/Countries",
type: "POST",
dataType: "json"
}
},
schema: {
model: {
id: "id",
fields: {
id : { type: "id" },
name: { type: "string" }
}
}
}
});
然后,我将能够重定向到该操作方法并检索值,但在autocomplete中,我无法获取记录。感谢您的帮助这是
数据源
和自动完成
定义:
// create a datasource bound to the local data
var countriesDS = new kendo.data.DataSource({
transport: {
read: {
url : "/Home/Countries",
type : "POST",
dataType: "json"
}
},
schema : {
model: {
id : "id",
fields: {
id : { type: "id" },
name: { type: "string" }
}
}
}
});
var autoComplete = $("#auto").kendoAutoComplete({
minLength : 3,
separator : ", ",
dataSource : countriesDS,
serverFiltering: true,
dataTextField : "name"
}).data("kendoAutoComplete");
这就是服务器应该如何返回国家列表
[
{ "id":1, "name":"Albania" },
{ "id":2, "name":"Andorra" },
{ "id":3, "name":"Armenia" },
{ "id":4, "name":"Austria" },
{ "id":5, "name":"Azerbaijan" },
...
]
你的JSFIDLE适合我。如果我输入“tur”,然后选择火鸡。如果我选择Turkey,那么文本框现在包含“Turkey”,我再次输入“tur”,这次我不会在自动完成选项中获得Turkey。问题是什么?您正在使用的JSON看起来如何。恐怕问题在于id不包含包含
id
和name
@EmilianoBartolome的元素数组。是的,这可能就是问题所在。我怎样才能解决我变得像这样的问题呢?{code>[{id=1,name=“albana”},{id=2,name=“andror”}…]这样似乎是正确的,使用小写的国家名称并不重要,因为在初始化kendoAutoComplete
()时,您可以将接受小写名称设置ignoreCase
设置为true