2012-09-03 14 views
5

Tengo una malla de Kendo que se une a un XML DataSource. ¿Cómo puedo cambiar el DataSource basado en la selección de una lista desplegable? Ejemplo:IU de Kendo Cadena de origen de datos de cambio dinámico (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 
       }... 
      }; 

Donde [DropDownListValue] es una lista desplegable en mi formulario. En este ejemplo, si [DropDownListValue] = 1, el origen de datos sería "1.xml". Si [DropDownListValue] = 2, el origen de datos sería "2.xml".

Respuesta

15

que fue capaz de lograr esto añadiendo lo siguiente al evento Change En mi lista desplegable:

//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, gracias por la limpieza. Si acepta que esto es correcto, marque la respuesta. Puedo dar fe de que lo estoy usando ahora y funciona muy bien. – RizcoTech

+0

Esto es increíble: el método también funciona para teléfonos móviles Kendo. –

+0

¿Cómo enviar la propiedad también? –

Cuestiones relacionadas