我想循环控件判断如果是CHECKBOX则,它的CHECKED = TRUE。代码出现问题。

gucun_zhuang 2004-10-26 03:41:29
function selectall(v) {
for (i=0;i<document.elements.length();i++)
if(document.elements[i].name=='users') document.elements[i].checked = v;
document.elements['select_all'].checked = v;
}

执行的时候提示我
'document.elements' 为空或不是对象
怎么会这样?怎么改?
...全文
103 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gucun_zhuang 2004-10-27
谢谢以德服人:)
我不明白一个问题。
document.all[i].name这段代码的ALL是什么意思??关于全部复选框的选择功能的处理函数SOHU和163各不一样。
SOHU的函数是document.elements[i].name
163的函数则是document.all[i].name
为什么同样的IE同样用的是JAVASCRIPT,而控件的变量不一样?不明白:(
回复
yrsheng 2004-10-26
错的是这个:document.elements.length();
在js中数组没有length()方法,所以提示出错:'document.elements' 为空或不是对象。
要得到长度直接用length属性就行了,而在 java/jsp 中才要用length()方法。
回复
yrsheng 2004-10-26
是否有同名\同ID的checkbox?如果有是一个数组。

还有一个方法:
var checkBox = document.getElementByTagName("INPUT");


if (checkBox[i].type=="CHECKBOX"){
checkBox[i].checked = true;
}

回复
gucun_zhuang 2004-10-26
之后我又修改了一下,改后的代码运行就正确了。
function selectall(v) {
for (i=0;i<document.all.length;i++)
if(document.all[i].name=='users') document.all[i].checked = v;
document.all['select_all'].checked = v;\r\n";
}
可有什么规则可指正的???谢谢
回复
noproblem12 2004-10-26
不过要指定check的id='checkedname'
回复
noproblem12 2004-10-26
document.getElementById("checkedName")
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告