C# 无法确定如何使剑道UI自动完成工作

C# 无法确定如何使剑道UI自动完成工作,c#,asp.net-mvc,kendo-ui,C#,Asp.net Mvc,Kendo Ui,我想要一个简单的自动完成框连接到MVC方法。我创建了以下内容,但是name参数是null,即使我硬编码了一些返回数据,自动完成功能也表示没有数据 剑道文档是完全无用的。谁能给我一个简单的工作示例 var catNamesDatasource = new kendo.data.DataSource({ transport: { read: { url: "/Cats/GetCats", type: "POST",

我想要一个简单的自动完成框连接到MVC方法。我创建了以下内容,但是
name
参数是
null
,即使我硬编码了一些返回数据,自动完成功能也表示没有数据

剑道文档是完全无用的。谁能给我一个简单的工作示例

var catNamesDatasource = new kendo.data.DataSource({
    transport: {
        read: {
            url: "/Cats/GetCats",
            type: "POST",
            dataType: "json"
        }
    },
    schema: {
        model: {
            id: "catCode",
            fields: {
                id: { type: "catCode" },
                name: { type: "string" }
            }
        }
    }
});

var autoComplete = $("#txtCatSearch").kendoAutoComplete({
    minLength: 3,
    separator: ", ",
    dataSource: catNamesDatasource,
    serverFiltering: true,
    dataTextField: "name"
}).data("kendoAutoComplete");
我的MVC方法是:

[HttpPost]
public ActionResult GetCats(string name)
{
    var cats = Enumerable.Range(0, 0).Select(e => new { catCode = "C1", name = "Mittens" }).ToList();
    clients.Add(new { catCode = "C2", name = "Fluffywuffy" });

    return Json(cats);
}
试试这个:

<input id="test" />
<div id="value"></div>

<script>
    $("#test").kendoAutoComplete({
        dataSource: ["orange", "red", "blue", "green"],
        change: function(e) {
           var value = e.sender.value();
           console.log("change", value);
           $("#value").text(value); 
        }
    });
</script>

$(“#测试”).kendoAutoComplete({
数据源:[“橙色”、“红色”、“蓝色”、“绿色”],
更改:功能(e){
var value=e.sender.value();
console.log(“更改”,值);
$(“#值”)。文本(值);
}
});
希望这有帮助…

试试这个:

<input id="test" />
<div id="value"></div>

<script>
    $("#test").kendoAutoComplete({
        dataSource: ["orange", "red", "blue", "green"],
        change: function(e) {
           var value = e.sender.value();
           console.log("change", value);
           $("#value").text(value); 
        }
    });
</script>

$(“#测试”).kendoAutoComplete({
数据源:[“橙色”、“红色”、“蓝色”、“绿色”],
更改:功能(e){
var value=e.sender.value();
console.log(“更改”,值);
$(“#值”)。文本(值);
}
});

希望这有助于…

很难复制,但是:您的MVC操作方法被调用了吗?第二件事是Enumerable.Range(0,0)将返回0条记录(但我假设在本例中输入错误)。而且你的serverFiltering属性应该在数据源中。@NibblyPig你能看看我下面的新答案吗?很难复制,但是:你的MVC操作方法被调用了吗?第二件事是Enumerable.Range(0,0)将返回0条记录(但我假设在本例中输入错误)。而且你的serverFiltering属性应该在数据源中。@NibblyPig你能看看下面我的新答案吗?