Javascript中,document.getElementsByName获取的就一定是数组了么?
2024-08-25 13:29:10
今天在一张JSP网页中,写一个javascript方法,用于全选。
全部被选checkBox位于一个名为mainForm的Form下,name=pushIds。方法如下:
function selectAll(obj){
var form = document.getElementById("mainForm");
var pushIds = form.pushIds;
var bool = obj.selected;
for(var j=0; j < pushIds.length; j++){
pushIds[j].select = bool;
}
}
由于pushIds的checkbox是动态的,有时可能是一个,有时可能是多个。
之前一直采用这段方法,没有发现问题;直到今天,当查询出一个pushIds后,才发现这段代码已经无效,于是我才发现了这个问题。左思又想不明白,像个1个多小时,实在憋不住问了领导,领导一句话点醒了我:“单个checkbox时,是不是不是数组啊”。
于是马上修改了代码:
function selectAll(obj){
var form = document.getElementById("mainForm");
var pushIds = form.pushIds;
var bool = obj.selected;
if(pushIds.length==null{
pushIds.checked=bool;
}else{
for(var j=0; j < pushIds.length; j++){
pushIds[j].select = bool;
}
}
}
之前一直没有留意这个问题,这个问题一直被忽略,直到今天才发现这个问题。稍后要将原来的这个问题全部解决掉。
最新文章
- SpringData —— HelloWorld
- Delphi文件操作函数
- Windows下为MySQL做定时备份
- awk打印出当前行的上一行
- 百度地图学习(II)-Android端的定位
- Docker系列之(二):使用Mesos管理Docker集群(Mesos + Marathon + Chronos + Docker)
- Apache Tomcat8必备知识
- Objective-C语言的一些基础特性
- 常用的HTTP方法
- 数据降维技术(2)—奇异值分解(SVD)
- 关于 httpUrlConnection 的 setDoOutput 与 setDoInput的区别
- Swift百万线程攻破单例(Singleton)模式
- Java转换流、缓冲流、流操作规律整理
- ConcurrentHashMap源码理解
- Java BitSet解决海量数据去重
- zxing二维码的生成与解码(C#)
- SpringBoot配置(1) 配置文件application&;yml
- Adobe Premiere Pro CC ------ 快捷键
- eclipse Specified VM install not found: type Standard VM, name
- bzoj5043: 密码破译