kendo ui dropdown not binding

时间:2015-11-20 14:15:17

标签: jquery kendo-ui

我正在使用带有下拉列表的Kendo UI内联编辑。 在我的代码中,我从控制器函数获取值为JSON。

下拉列表没有绑定此JSON数据,它显示错误,因为无法识别e.slice。

 $("#orderItems-grid").kendoGrid({
        dataSource: datasource,
        columns: [{
            field: "Orderref",
            title: "Order Ref",
            editable: false
        }, {
            field: "ProductRef",
            title: "Product Ref",
            editable: false
        }, {
            field: "ProductNotes",
            title: "Product Notes",
            editable: false
        }, {
            field: "OrderStatusId",
            title: "Order Status",
            template: "#=OrderStatus#",
            editor: function (container) {
                var input = $('<input id="OrderStatusId" name="OrderStatusId">');
            input.appendTo(container);
            input.kendoDropDownList({
                dataTextField: "Value",
                dataValueField: "Key",                    
                dataSource: {
                    transport: {
                        read: {                                
                            url: "/Order/GetOrderStatusListForDD",
                            type: "POST",
                            dataType:"json"
                        }
                    }
                }

            }).appendTo(container);
        }
    },
    { command: { name: "edit", text: "Edit Status" } }],
    editable: "inline"
});

Dropdown list

我的JSON结果是

{ “16”:“分配给挑选队列”, “2”:“等待批准”, “10”:“等待命令”, “9”:“等待股票”, “6”: “取消”, “14”:“取消和产品重置”, “7”: “被拒绝”, “8”: “停产”, “11”:“停产和替代发现”, “15”: “已开发票”, “1”:“订单已收到”, “3”:“发送给供应商的订单”, “5”: “已装船”, “4”:“存储区” }

1 个答案:

答案 0 :(得分:0)

你有两次.appendTo(容器)。试试这个:

editor: function (container, options) {
    $('<input data-bind="value:' + options.field + '"/>')
        .appendTo(container)
        .kendoDropDownList({
            dataTextField: "Value",
            dataValueField: "Key",  
            dataSource: {
                transport: {
                    read: {
                        url: "/Order/GetOrderStatusListForDD",
                        type: "POST",
                        dataType: "json"
                    }
                }
            }
        });
    }
你的GetOrderStatusListForDD()动作中的

更新:结果必须实现IEnumerable,然后返回Json(result)将返回正确的JSON