为什么我的Kendo下拉列表没有绑定?

时间:2017-09-21 13:28:49

标签: javascript jquery kendo-ui

我的kendoDropDown列表让我发疯了!数据源中有数据,但是当我打开它时它不显示它!我用以下的ajax绑定它(最后一行是绑定部分):

$.ajax({
    dataType: "json",
    type: "POST",

    url: "@Url.Action("modelProducer","AdminTool")",
    contentType: "application/json; charset=utf-8",
    data: JSON.stringify({ "turbineType": s, }),
    success: function(data) {
        modelProducerResult = data;
        myData = data;
        var ddl = $("#ModelProducer").data("kendoDropDownList");
        // ddl.dataSource.data({}); // clears dataSource
        //ddl.dataSource.data({});
        ddl.text(""); // clears visible text
        ddl.value("");
        // $("#ModelProducer").empty();
        $("#ModelProducer").data("kendoDropDownList").dataSource.data(modelProducerResult);
    }
});

这是我的下拉列表,数据来自ajax,它有数据,但下拉列表没有打开!

function modelProducer(container, options) {
    var t = modelProducerResult;

    $('<input  name="ModelProducer" id="ModelProducer" data-type="string" style="width: 100%"\">')
        .appendTo(container)
        .kendoDropDownList({
            dataSource: modelProducerResult,
            dataTextField: "model",
            dataValueField: "model",
            valuePrimitive: true,
            ServerFiltering: true
        });
}

1 个答案:

答案 0 :(得分:0)

如何使用

刷新数据源
$("#ModelProducer").data("kendoDropDownList").dataSource.read();

此外,我不确定您对ServerFiltering: true等的设置。也许您可以使用默认的kendo-way绑定到远程数据like here in the demo

更新1

我做了一个JSFiddle simulating your situation,看起来这可能是jQuery版本的一个问题。在edge jQuery上运行演示时,它无法打开。

将jQuery更改为2.1.3似乎可行。

你能证实吗?你用的是什么版本? 查看kendo ui docs(docs.telerik.com/kendo-ui/intro/installation/prerequisites - 抱歉,无法在SO上发布3个链接: - /)以获取兼容性信息。