動態改變kendoGrid的數據、列和基礎設置


1.改變數據

第一種方法:

dataSource:{
   transport: {
       read: function (operation) {
               var data = operation.data.data || [];
               operation.success(data);
          }
    },    
}

$("#grid").data("kendoGrid").dataSource.read({
      data:materiel_data;
})

注意:如果使用上面的方法,dataSource中初始化數據的方法,都不能使用。例(schema中的方法)

第二種方法:

var dataSource = new kendo.data.DataSource({
  data: [
    { name: "John Doe", age: 33 }
  ]
});
var grid = $("#grid").data("kendoGrid");
grid.setDataSource(dataSource);

2.改變列和基礎設置

    $("#grid").kendoGrid({
        columns: [
          { field: "name" },
          { field: "age" }
        ],
        dataSource: [
            { name: "Jane Doe", age: 30, sex:'女'},
            { name: "John Doe", age: 33, sex:'男'}
        ]
    });
    var grid = $("#grid").data("kendoGrid");
    grid.setOptions({
          sortable: true,
            columns: [
             { field: "name" },
             { field: "sex" }
          ],
    });

 3.根據字段動態改變class類名

attributes: { 
     "class": "# if(data.isgen && data.isgen == true) { #editColor# } else{ # green #} #" 
}
//使用該方法,數據庫中必須存在isgen字段,否則報錯
attributes:{ "class":"#=isgen === true ? 'editColor' : ''#" }
//看別人說可以用,但是好像用不了,不造是不是用法不對,自行研究
attributes: function(e) {
     return {
           class": "editColor",
           style: e.name == "Jane Doe" ? "background-color: red" : "background-color: green"
     };
 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM