function valid()
{
begin_checked = false;
end_checked = false;
alert("begin_checked: " +begin_checked);
alert("end_checked: " +end_checked);
if (document.dd.begin.checked.length == undefined || document.dd.end.checked.length == undefined )
{
alert("In undefined");
}
alert("end");
}
Run Code Online (Sandbox Code Playgroud)
当if语句为false时,它永远不会报警("结束")?如果是真的,它会正确执行.为什么?
可能存在空指针异常,并且您没有输出到浏览器的错误.
你需要一些输出来检查:
alert(document);
alert(document.dd);
alert(document.dd.begin);
alert(document.dd.begin.checked);
alert(document.dd.end);
alert(document.dd.end.checked);
Run Code Online (Sandbox Code Playgroud)
如果从任何这些中获取未定义,那么您的代码将无法正确执行.
编辑:此外,这里的其他答案都有很好的信息.阅读这些内容.
编辑2:替代 - 在try/catch块中包围您的代码并提醒错误:
function valid(){
try{
begin_checked = false;
end_checked = false;
alert("begin_checked: " +begin_checked);
alert("end_checked: " +end_checked);
if (document.dd.begin.checked.length == undefined || document.dd.end.checked.length == undefined ){
alert("In undefined");
}
alert("end");
} catch (e) {
alert(e);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
438 次 |
| 最近记录: |