2012-09-03 31 views
5

Tôi có một Lưới Kendo liên kết với một nguồn dữ liệu XML. Làm thế nào tôi có thể có sự thay đổi DataSource, dựa trên việc lựa chọn một danh sách thả xuống. Ví dụ:Kendo UI Tự động thay đổi chuỗi dữ liệu (XML)

//Create DataSource 
    var gridDataSource = new kendo.data.DataSource({    
     transport: { 
      read: [DropDownListValue] + ".xml", 
      dataType: "xml" 
     } 
     }); 

    gridDataSource.read(); 

    function createGrid(){     
      var grid = $("#grid").kendoGrid({ 
       dataSource: gridDataSource 
       }... 
      }; 

Trường hợp [DropDownListValue] là danh sách thả xuống trên biểu mẫu của tôi. Trong ví dụ này nếu [DropDownListValue] = 1, nguồn dữ liệu sẽ là "1.xml". Nếu [DropDownListValue] = 2, thì nguồn dữ liệu sẽ là "2.xml".

Trả lời

15

tôi đã có thể đạt được điều này bằng cách thêm dòng sau vào Thay đổi sự kiện Mở danh sách thả xuống của tôi:

//Assign drop down value to variable 
var dropDownListValue = $("#dropDown1").val(); 

//Concatenate drop down variable to file name 
var dynamicUrl = dropDownListValue +".xml"; 

//Assign grid to variable 
var grid = $("#grid").data("kendoGrid"); 

//Set url property of the grid data source 
grid.dataSource.transport.options.read.url =dynamicUrl; 

//Read data source to update 
grid.dataSource.read(); 
+0

RegDwight, cảm ơn cho dọn dẹp. Nếu bạn đồng ý điều này là chính xác, vui lòng đánh dấu là đã trả lời. Tôi có thể chứng thực tôi đang sử dụng nó ngay bây giờ và nó hoạt động tuyệt vời. – RizcoTech

+0

Điều này thật tuyệt vời - phương pháp này cũng hoạt động trên điện thoại di động Kendo. –

+0

Làm cách nào để gửi tài sản? –

Các vấn đề liên quan