繁体   English   中英

无法通过使用Webservice的方法在剑道窗口上加载下拉列表

[英]Unable to load the dropdown list on a kendo window from a method using Webservice

单击页面上的“编辑”按钮时,将触发方法,并打开一个使用Kendo模板的窗口。 kendo窗口上的控件之一是Kendo下拉列表,该列表需要具有来自webmethod的值。单击编辑按钮时出现的错误是“对象不支持属性或方法” slice”。 以下是我的“编辑”按钮的代码。

function edit(item) {
var editTemplate = kendo.template($("#editTemplate").html());
var treeview = $("#treeview").data("kendoTreeView");
var selectedNode = treeview.select();
var node = treeview.dataItem(selectedNode);
$("<div/>")
    .html(editTemplate({ node: node}))
    .appendTo("body")
    .kendoWindow({
        modal: true,
        activate:function(){


            $("#roles").kendoDropDownList({
                dataTextField: "Countryname",
                dataValueField: "CountryId",
                dataSource: {
                    transport: {
                        read: {
                            url: "/Services/MenuServices.asmx/getcountries",
                            contentType: "application/json; charset=utf-8", // tells the web service to serialize JSON
                            type: "POST", //use HTTP POST request as the default GET is not allowed for ASMX
                        }
                    }
                }
            })
            },
        deactivate: function () {
            this.destroy();
        }
    })
 .on("click", ".k-primary", function (e) {     
    var dialog = $(e.currentTarget).closest("[data-role=window]").getKendoWindow();
    var textbox = dialog.element.find(".k-textbox");
    var Id = $('#ID').val();
    node.set("id", Id);
    dialog.close();
    var treenode = treeview.dataSource.get(itemid);
    treenode.set("id", Id);
    treenode.ID = Id;



    console.log(JSON.stringify(treenode));
        })

}

Kendo窗口打开时会触发此服务的窗口是否有任何属性。现在我正在使用Activate事件,但无法正常工作。也使用'Open'事件进行了尝试。

谢谢

我将Schema部分添加到了数据源中,并且它起作用了。

schema: {
                        data: function (response) {
                            return JSON.parse(response.d); // ASMX services return JSON in the following format { "d": <result> }. 
                        },
                        model: { // define the model of the data source. Required for validation and property types.
                            id: "CountryId",
                            fields: {
                                CountryId: { editable: false, nullable: false, type: "string" },
                                Countryname: { editable: true, nullable: true, type: "string" },
                               }
                        },
                    },

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM