我想循环控件判断如果是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' 为空或不是对象
怎么会这样?怎么改?
...全文
164 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
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")

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧