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