2013-11-24 41 views
0

我想添加一個新的行到劍道網格與從另一個劍道網格選定的數據。它顯示一個空行但沒有數據。這裏是我的代碼:如何在劍道網格中添加預定義數據的新行?

 var PunishmentGridDataSource = new kendo.data.DataSource({ 
      schema: { 
       model: { 
        id: "DICP_ACTN_TYPE_CODE", 
        fields: { 
         DICP_ACTN_TYPE_SLNO: { editable: false }, 
         DICP_ACTN_TYPE_CODE: { editable: false }, 
         DICP_ACTN_TYPE_NAME: { editable: false } 
        } 
       } 
      }, 
      pageSize: 5, 
      data: [ 
         { DICP_ACTN_TYPE_SLNO: "1", DICP_ACTN_TYPE_CODE: "1", DICP_ACTN_TYPE_NAME:"aa" }] 
     }); 





     var PunishmentGrid = $("#PunishmentGrid").kendoGrid({ 
      dataSource: PunishmentGridDataSource, 
      pageable: true, 
      editable: 'false', 
      selectable: "row", 
      navigatable: true, 
      filterable: true, 
      sortable: true, 
      groupable: true, 
      scrollable: true, 
      width: '250PX', 
      height: '200PX', 
      columns: [ 
       { field: "DICP_ACTN_TYPE_SLNO", title: "SL.", filterable: false, width: "30px" }, 
       { field: "DICP_ACTN_TYPE_CODE", title: "Code", filterable: false, width: "50px" }, 
       { field: "DICP_ACTN_TYPE_NAME", title: "Name", filterable: true, width: "120px" } 


      ] 
     }); 


//Handling Yes button click for grid row Selection 
     $('#btnListOfValue2OK').click(function (idx, elem) { 
      ClearOperationMsgTextBoxRedColor(); 

      var grid = $("#ListOfValueWindowGrid2").data("kendoGrid"); 
      var selectedItem = (grid.dataItem(grid.select())); 
      var rows = grid.select(); // Can I select multiple rows by this & bind directly to the data source of another grid?? 





      var obj = [{ DICP_ACTN_TYPE_SLNO: selectedItem.DICP_ACTN_TYPE_SLNO, DICP_ACTN_TYPE_CODE: selectedItem.DICP_ACTN_TYPE_CODE, DICP_ACTN_TYPE_NAME: selectedItem.DICP_ACTN_TYPE_NAME }]; 

      var ds = $("#PunishmentGrid").data("kendoGrid").dataSource; 
      ds.add(obj); 
      ds.data(); 

      CloseListOfValueDialog2(); 

     }); 

可能是我失去了一些非常基本的東西。請幫我找出答案!

+0

您的代碼看起來是正確的第一眼,具有JsBin證明,所以我們可以仔細看。 –

回答

3

我嘗試了類似的設置如預期其工作原理:

$("button").click(function() { 
    var parent = $("#parent-grid").data("kendoGrid"); 
    var child = $("#child-grid").data("kendoGrid"); 

    var selectedDataItem = parent.dataItem(parent.select()); 

    if (selectedDataItem) { 
    child.dataSource.add({ 
     foo: selectedDataItem.foo 
    }); 
    } 
}); 

這裏有一個現場演示:http://jsbin.com/EpeMiwe/1/edit

+0

是的,我昨天解決了這個問題。但你的回答是正確的。 –