最简格式:这是一个偷巧的方法,但不通用。前提是这个页面只有一个datagrid,且只有datagrid中有checkbox;这个就比较方便。主要思路就是搜索出整个页面的checkbox,将它们全部选中或反选。 // 全选 function allCheck() { for (var i=0;i<Form1.elements.length;i++) { var e=Form1.elements[i]; if (e.type=='checkbox') e.checked=true; }
} //反选 function revCheck() { for (var i=0;i<Form1.elements.length;i++) { var e=Form1.elements[i]; if (e.type=='checkbox') e.checked=!e.checked; } }
function getObj( objID ) { return document.getElementById( objID ); }
// 全选 function _SelectAll( prefix,s,chk ) { var oArr = _GetColl( prefix,s,chk ); for( var o in oArr ) { oArr[o].checked = true; } } // 反选 function _RevSelect( prefix,s,chk ) { var oArr = _GetColl( prefix,s,chk ); for( var o in oArr ) { oArr[o].checked = !oArr[o].checked; } }
// 获值 function _GetColl( prefix,s,chk ) { var i = s; var oArr = new Array(); while( true) { var o = getObj( prefix + '__ctl' + i + '_' + chk); if( o != null ) { oArr.push( o ); } else { break; } i++; }
return oArr; } // 检查是否选中 function _CheckSelect( prefix,s,chk ) { var oArr = _GetColl( prefix,s,chk ); for( var o in oArr ) { if( oArr[o].checked) { return true; } } return false;