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 が定義されていません
以下で指定された optionLabel がない場合、ドロップダウンは正常に機能します (空の項目なし)。
optionLabel を指定してテンプレート オプションを削除すると、(複数の列がなくても) 正常に動作します。
テンプレート内で未定義かどうかを確認する方法はありますか? 次のようなもの:
<span>${TicketTypeDescription} !== undefined ? ${TicketTypeDescription} : '' </span>