2011-05-19 64 views
0

我有下面的代碼在我的jqGridjqGrid的編輯按鈕訪問一組複選框被選中

<script type="text/javascript"> 
    jQuery(document).ready(function() { 

     var grid = jQuery("#list"); 
     $("#editBtn").click(function() { 
      alert("hi");       }); 


     jQuery("#list").jqGrid({ 
      url: '<%= Url.Action("DynamicGridData") %>', 
      datatype: 'json', 
      mtype: 'POST', 

      colNames: ['checkbox', 'Id','col1','col2' ], 
      colModel: [ 
     { name: 'checkbox', index: 'checkbox', sortable: false, formatter: "checkbox", formatoptions: { disabled: false }, editable: true, edittype: "checkbox" }, 
       { name: 'Id', index: 'Id', search: false, stype: 'text', sortable: true, sorttype: 'int', hidden: true }, 
     { name: 'col1', index: 'col1', search: false, stype: 'text', sortable: true, sorttype: 'int', search: false, hidden: true }, 
     { name: 'col2', index: 'col2', sortable: true, search: false, width: 30, stype: 'int' } ], 
      pager: jQuery('#pager'), 
      rowNum: 40, 
      rowList: [20, 40, 60, 100], 
      sortname: 'Id', 
      sortorder: 'asc', 
      gridview: true, 
      autowidth: true, 
      rownumbers: true, 
      viewrecords: true, 
      toppager: true, 
      height: "100%", 
      width: "100%", 
      caption: 'Grid Data' 
     }); 



    }); 

我可以在editBtn功能觸發警報測試,用戶怎樣才能訪問的id列記錄的用戶選擇了其複選框?

回答

0

使用下面的代碼來獲得其複選框被打勾Id列數據...

var grid = jQuery("#list"); 
$("#editBtn").click(function() { 
    var str = ''; 
    var data = grid.getRowData(); 
    for(i=0;i<data.length;i++){ 
     if(data[i].checkbox==='Yes') 
      str += data[i].Id+','; 
    } 
    alert(str); 
}); 

str變量由用於該複選框被由用戶選擇的ID列的值。

+0

謝謝Sandeep,我想出了一種方法,並沒有機會測試你的,但它幾乎是類似的,所以我會發布我的,並選擇它答案var grid = jQuery(「#list」);對於(var i = 0; i()),我們可以使用下面的代碼:var(「#」); (inputs.length; i ++){ if(inputs [i] .type =='checkbox'&& inputs [i] .checked){ var p = inputs [i] .parentNode.parentNode; alert(id); }}}); – Sue 2011-05-20 16:30:44

+0

好..多數民衆贊成的替代方法...我使用的是jqgrid元素,你使用的HTML元素...感謝張貼替代方式... – Sandeep 2011-05-23 09:28:18