【问题标题】:Kendo Dropdownlist not updating Kendo Grid datasource on first record?Kendo Dropdownlist 没有在第一条记录上更新 Kendo Grid 数据源?
【发布时间】:2013-02-15 07:12:18
【问题描述】:

这是我的问题...

我希望将一个下拉列表绑定到我的网格,如下所示:


{
     field: "ContactTypeId",
     hidden: true
},
{
     field: "ContactTypeName",
     title: "Type",
     editor: ContactTypeAddressCombo
}

function ContactTypeAddressCombo(container, options) {
                $('<input placeholder="A" data-bind="value:ContactTypeId"/>')
                .appendTo(container)
                .kendoDropDownList({
                    autoBind: false,
                    dataTextField: "Name",
                    dataValueField: "ContactTypeId",
                    dataSource: {
                        type: "json",
                        serverFiltering: true,
                        transport: {
                            read: {
                                contentType: "application/json; charset=utf-8",
                                type: "POST",
                                url: "../Services/svcContact_Type.asmx/Search",
                                dataType: "json",
                                cache: false
                            },
                            parameterMap: function(options, operation) {
                                options.AddressFlag = 1;
                                options.PhoneFlag = 1;
                                options.EmailFlag = 1;
                                return kendo.stringify(options);
                            }
                        },
                        schema: {
                            data: "d"
                        }
                    },
                    index: 0
                });
            }

一切正常,除了当我向网格添加新行时。下拉列表加载正常并选择了一个项目,但除非我更改为另一个项目,否则网格将无法识别所选项目(即使选择了一个项目,网格的数据源也会发送 0)。

一个解决方案是让第一个项目始终为“选择一个”,值为 0,这将强制用户选择一个项目。但这远非理想。所以……还有其他建议吗?下拉列表是否有某种占位符?

谢谢

【问题讨论】:

    标签: jquery drop-down-menu kendo-ui datasource kendo-grid


    【解决方案1】:

    这个问题在互联网上被多次讨论,每个用户都以不同的方式描述它。创建新项目时,您应该设置默认值,以便 MVVM 框架可以正确分配 DropDownList 的选定值,或者您应该在编辑事件的帮助下手动完成。

    换句话说 - 您的模型属性不应为空 - 它应该是字符串或数字,否则当您使用 DropDownList 更改值时它不会正确更新(DropDownList 用于的整个 dataItem 将被分配为值)。

    Here 是更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-19
      • 1970-01-01
      • 2015-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多