【问题标题】:Load data to a Kendo Dropdown将数据加载到 Kendo Dropdown
【发布时间】:2013-10-23 07:29:44
【问题描述】:

我正在尝试使用 ajax 调用将数据绑定到 Kendo Dropdown。 call 成功获取数据,但 kendo 下拉菜单未显示任何数据。

JSON 对象

下拉:

<div class="editor-field">
                @Html.DropDownListFor(model => model.selectedWorkItem, new SelectList(Model.lstWorkItemType), "Select Below...", new { @style = "width:200px;height:20px" })
 </div>

Ajax 调用:

<script type="text/javascript">
    $(document).ready(function () {

        $("#selectedProject").change(function () {

            var valid = $("#selectedProject").val();

            if (valid != "Select Below...") {

                var procemessage = "<option value='0'> Please wait...</option>";
                $("#selectedWorkItem").html(procemessage).show();
                var murl = "/TFS/TFSProjectDetails/";

                $.ajax({
                    url: murl,
                    data: { pName: valid },
                    cache: false,
                    type: "POST",
                    success: function (data) {

                        if (JSON.stringify(data) != "[]") {
                            var ddl = $('#selectedWorkItem').data("kendoDropDownList");
                            for (var x = 0; x < data.length; x++) {

                                ddl.setDataSource(data[x].Text);
                            }

                            ddl.refresh();
                        }

                    },
                    error: function (reponse) {
                        alert("error : " + reponse);
                    }
                });
            }
        });

    });
</script>

【问题讨论】:

    标签: jquery ajax kendo-ui kendo-asp.net-mvc kendo-dropdown


    【解决方案1】:

    您需要先指定要在 kendo 下拉菜单中显示的值和文本字段,

      $("#selectedWorkItem").kendoDropDownList({
           dataTextField: "Text",
           dataValueField: "Value",
        });
    

    然后像这样改变你的成功方法来设置数据源,(我假设data是一个JSON数组)

     success: function (data) {        
          if (JSON.stringify(data) != "[]") {
                  var ddl = $('#selectedWorkItem').data("kendoDropDownList");
                    ddl.setDataSource(data);
            }
     },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多