【问题标题】:Kendo UI Dropdownlist with template set selected value doesn't work带有模板集选定值的 Kendo UI 下拉列表不起作用
【发布时间】:2013-04-05 15:27:54
【问题描述】:

我正在尝试使用使用模板的 Kendo Dropdownlist。我有一个页面,用户可以在其中选择一个数据集,并且该数据集使用值填充下拉列表。我的大多数下拉菜单都不使用模板,但是无法正常工作的是使用模板。

我的模板:

<script type="text/x-kendo-tmpl" id="dropdownTemplate">
  <div>
    <p><strong>#= Name #</strong></p>
    <p>#= Description #</p>
  </div>
</script>

我的下拉定义:

$("#listTemplates").kendoDropDownList({
 dataTextField: "Name",
 dataValueField: "ChartTemplateId",
 template: kendo.template($("#dropdownTemplate").html()),
 change: listTemplatesChange
});

我如何填充我的下拉列表:

 portalTemplatesModel = [
 [{
   Name: "Test",
   Description: "Long Description",
   ChartTemplateId: "1"
 }],
 [{
   Name: "Test2",
   Description: "Long Description2",
   ChartTemplateId: "2"
 }]
 ]
 for (i = 0; i < portalTemplatesModel.length; i++) {

   $("#listTemplates").data("kendoDropDownList").dataSource.add(portalTemplatesModel[i]);
 }

我的二传手:

var ddTemplates = $("#listTemplates").data("kendoDropDownList");
 ddTemplates.select(function (dataItem) {
 return dataItem.value === placeHolderChart.ChartTemplateId;
});

dataItem 如下所示:

 [{
   Name: "Test",
   Description: "Long Description",
   ChartTemplateId: "1"
 }]

我在设置器文档中注意到您应该使用值或项。但是,对于我正在使用的数据集,它似乎使用了一个不包含值或文本的不同对象,就像其他不使用模板的下拉菜单一样。

提前谢谢你!

【问题讨论】:

    标签: kendo-ui


    【解决方案1】:

    我遇到了类似的问题。似乎起作用的是添加数据。在您调用数据源值之前。 即 #=data.Description #

    【讨论】:

    • 我为 ComboBox 使用了相同的模板,但我没有放“数据”。在前。这很奇怪。
    【解决方案2】:

    您可以通过在您的 kendoTemplate 中添加 ${Name} 和 ${Description} 来填充它,当读取数据源时,模板将获取值,您可以根据您的模板查看它。

    【讨论】:

      猜你喜欢
      • 2017-02-24
      • 2013-04-12
      • 1970-01-01
      • 1970-01-01
      • 2021-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多