繁体   English   中英

验证复选框

[英]Validation for checkboxes

你好
我有一个JS函数说

for(var i = 0; i < document.calDailyBlock.selFilCheckBox.length; i++)  
{  
  if(document.calDailyBlock.selFilCheckBox[i].checked)  
  {  
     filteredInitId += document.calDailyBlock.selFilCheckBox[i].value + ",";  
     alert(filteredInitId);  
     isProjCheck = true;  
  }  
}  
document.calDailyBlock.filteredComId.value = filteredInitId;  

当页面上没有复选框并且我尝试单击调用此函数的Filter按钮时,我收到错误“document.calDailyBlock.selFilCheckBox.length'为null或不是对象”

我可以在这个函数中添加任何简单的东西吗?

也有人可以帮我检查一页上是否只有一个复选框?

提前致谢

我认为你依赖于某些浏览器的一个相当模糊(非官方)的功能,它允许你从文档中获取一个元素,就像它是一个属性一样。 换句话说,你要去:

document.calDailyBlock

这是在文档中搜索变量calDailyBlock 相反,您应该使用标准化的getElementById

document.getElementById("calDailyBlock")

并使用相同的方法获取selFilCheckBox

如果calDailyBlockselFilCheckBox这将返回null。 在你调用它们的length (它给出了这个错误)之前,你应该检查你是否回到null,然后(我想)默默地失败(不做任何事情)。

为了避免错误使用if:

if(document.calDailyBlock.selFilCheckBox) {
  for(var i = 0; i < document.calDailyBlock.selFilCheckBox.length; i++)  
  { … }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM