繁体   English   中英

结合使用Kendo-ui数据源数据和多个下拉小部件

[英]using kendo-ui datasource data with multiple dropdown widgets

如果我使用的共享数据源使ajax请求的数量与服务器的下拉列表的数量一样多,那么我想使用具有多个下拉列表的Datasource数据。 我需要的是1个ajax请求,并使用该数据填充所有下拉列表。 此代码给我ildata未定义。

感谢帮助。

代码示例

var ilDataSource= new kendo.data.DataSource({
  transport: {
    read:  {
      url: "{{ url('ajax/ilList') }}",
      dataType: "json" 
    }
  }
});
ilDataSource.fetch(function(){
  var ildata = ilDataSource.data();
});

var iller = $("#iller").kendoDropDownList({
  placeholder: "İl Seçiniz",
  dataSource : {
    data:  ildata
  },
  dataTextField: "il",
  dataValueField: "id"
}).data("kendoDropDownList");

我可以在函数范围内获取数据项,但不能在公共范围内获取数据项。

   ilDataSource.fetch(function() { 
   ildata = ilDataSource.data().toJSON();
   console.log(ildata); }); 
 ilDataSource.fetch(function(){ var ildata = ilDataSource.data(); }); 

这定义了范围为匿名函数的局部变量ildata

 dataSource : { data: ildata }, 

因此,在这一点上没有变量/属性ildata

您需要在两个用例的通用范围内声明ildata

var ildata;
ilDataSource.fetch(function(){
  ildata = ilDataSource.data();
});

var iller = $("#iller").kendoDropDownList({
  placeholder: "İl Seçiniz",
  dataSource : {
    data:  ildata
  },
  dataTextField: "il",
  dataValueField: "id"
}).data("kendoDropDownList");

Kendo是否可以处理单个DataSource的重用是另一个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM