kendo-ui - 带有空白项的 Kendo DropDownList 模板

标签 kendo-ui multiple-columns kendo-dropdown

我正在尝试使用 Kendo DropDownList 并在列表顶部提供一个空白项目,以及使用模板提供多个列。

   var ticketType = $("#TicketType").kendoDropDownList
({

    dataTextField: "TicketTypeName",
    dataValueField: "TicketTypeId",
    optionLabel: " ", //This should add a blank item, but errors out instead.
    dataSource:
    {
        serverFiltering: true,
        type: "jsonp",
        transport:
        {
            read:
            {
                url: "../Service/IncidentManagement.asmx/GetTicketTypeList",
                contentType: "application/json; charset=utf-8",
                type: "POST"
            }
        },
        schema:
        {
            data: "d"
        }
    },
    template: "<div><span>${TicketTypeName}</span><span>${TicketTypeDescription}</span></div>"
}).data("kendoDropDownList");

上面的结果

Uncaught ReferenceError: TicketTypeDescription is not defined

如果我没有下面指定的 optionLabel,则下拉列表可以正常工作(没有空项目)。

如果我指定了 optionLabel 并删除了模板选项,则它可以正常工作(无需多列)。

有什么方法可以检查它是否在模板中未定义?大致如下:

<span>${TicketTypeDescription} !== undefined ? ${TicketTypeDescription} : '' </span>

最佳答案

根据 Telerik 的回复:

The problem comes from the fact that the optionLabel does not know about the other properties of the data object. So you need to set some values, even empty ones, in order to work correctly.

因此,需要按如下方式指定 optionLabel:

optionLabel: {
          TicketTypeName: " ",
          TicketTypeId: "",
          TicketTypeDescription: ""
        }

关于kendo-ui - 带有空白项的 Kendo DropDownList 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24313309/

相关文章:

kendo-ui - 如何在 Kendo DropDownList 中设置默认值

kendo-ui - 剑道日期选择器 : Prevent closing picker when clicking a date

javascript - 图例标签自定义在模型 Controller 中不起作用

c# - Kendo UI 上传不返回 onSuccess

html - 2 列内容不同,但高度相同

css - 将 3 列布局转换为始终位于顶部的一列

telerik - Kendo UI Grid 的过滤器未对指定列执行

javascript - Kendo UI kendoDropDownList 并以编程方式触发选择回调

mysql - 选择查询案例,按条件/标准分配两个变量

javascript - 在 html 页面上使用 javascript 动态添加剑道下拉列表