今天在一张JSP网页中,写一个javascript方法,用于全选。javascript
所有被选checkBox位于一个名为mainForm的Form下,name=pushIds。方法以下:java
1 function selectAll(obj){ 2 var form = document.getElementById("mainForm"); 3 var pushIds = form.pushIds; 4 var bool = obj.selected; 5 for(var j=0; j < pushIds.length; j++){ 6 pushIds[j].select = bool; 7 } 8 }
因为pushIds的checkbox是动态的,有时多是一个,有时多是多个。数组
以前一直采用这段方法,没有发现问题;直到今天,当查询出一个pushIds后,才发现这段代码已经无效,因而我才发现了这个问题。左思又想不明白,像个1个多小时,实在憋不住问了领导,领导一句话点醒了我:“单个checkbox时,是否是不是数组啊”。spa
因而立刻修改了代码:code
1 function selectAll(obj){ 2 var form = document.getElementById("mainForm"); 3 var pushIds = form.pushIds; 4 var bool = obj.selected; 5 if(pushIds.length==null{ 6 pushIds.checked=bool; 7 }else{ 8 for(var j=0; j < pushIds.length; j++){ 9 pushIds[j].select = bool; 10 } 11 } 12 }
以前一直没有留意这个问题,这个问题一直被忽略,直到今天才发现这个问题。稍后要将原来的这个问题所有解决掉。orm