グリッド行を選択、解除した時のイベントを捕捉する
行をクリックした時に何かしたい、という要望は必ずあると思うので、そのサンプルです。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>行クリックイベント捕捉サンプル</title> <link rel="stylesheet" type="text/css" media="screen" href="css/jquery-ui-1.7.2.custom.css" /> <link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" /> <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script> <script type="text/javascript" src="js/i18n/jquery.jqGrid.min.js"></script> <script type="text/javascript" src="js/jquery.jqGrid.min.js"></script> <script type="text/javascript"> function show_row(id) { "cb_jqg"; var r = $("#list").getRowData(id); alert("番号、名前:" + r.employee_no + ", " + r.name); } jQuery(document).ready(function() { jQuery("#list").jqGrid({ datatype: "local", colNames:['従業員番号', '名前'], colModel:[ {name:'employee_no', editable:true}, {name:'name' , editable:true}, ], // 行クリックの際のイベントを捕捉する // クリックされた行IDが渡されてくる // 複数行選択の場合は第2引数にチェックした時(true)か、解除した時(false)かが渡されてくる // ただし、全選択、全解除の場合は、このイベントは呼ばれないので注意する onSelectRow: function(id, b_check) { alert(b_check ? "選択されました" : "解除されました"); show_row(id); }, // 全選択、全解除の場合に呼ばれる // 第1引数は、全行ID // 第2引数は、チェック時true、解除時false onSelectAll: function(ids, b_check) { alert(b_check ? "全行選択されました。" + ids : "全行解除されました。" + ids ); }, multiselect: true, caption: '行クリックイベントを捕捉する' }); var mydata = [ {employee_no:"1",name:"test1"}, {employee_no:"2",name:"test2"}, {employee_no:"3",name:"test3"}, ]; for(var i=0;i<=mydata.length;i++) jQuery("#list").addRowData(undefined,mydata[i]); }); </script> </head> <body> <table id="list" class="scroll" cellpadding="0" cellspacing="0"></table> </body> </html>