Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
for循环在javascript中意外结束_Javascript - Fatal编程技术网

for循环在javascript中意外结束

for循环在javascript中意外结束,javascript,Javascript,我有一个调用这个函数的html按钮。但由于未知的原因,它只进行了3次迭代 有谁能帮我或者让我参考一些好的例子,为什么for循环在第三次迭代后会中断 for(i = 1; i < 10; i++) { alert(i); if (document.getElementById(i).checked) { alert("dda3"); act = act + document.getElementById("TD" + i).innerHTML + delimiter

我有一个调用这个函数的html按钮。但由于未知的原因,它只进行了3次迭代

有谁能帮我或者让我参考一些好的例子,为什么for循环在第三次迭代后会中断

for(i = 1; i < 10; i++) {
   alert(i);
  if (document.getElementById(i).checked) {
    alert("dda3");
    act = act + document.getElementById("TD" + i).innerHTML + delimiter;
  }
}
(i=1;i<10;i++)的
{
警报(一);
if(document.getElementById(i).checked){
警报(“dda3”);
act=act+document.getElementById(“TD”+i).innerHTML+分隔符;
}
}

最可能的原因是您没有id为
的元素
“4”
。因此,
document.getElementById
返回
null
,然后当您尝试查看
checked
属性时,您取消了对
null
的引用,这会引发异常。当然,您没有具有
id
“TD4”
的元素,因此以后的
getElementById
返回
null
,并且在分配给
innerHTML
时会出现异常

尝试调试时,最好使用调试器。所有现代浏览器都内置了调试器,其中一些相当不错。在大多数浏览器上,按F12键将调试器调出,但如果没有,请查看“开发人员工具”或类似工具的菜单

即使没有调试器,所有十多年前的浏览器都有办法告诉您JavaScript错误。我至少会启用它,以便您可以看到错误



旁注:
id
以数字开头的值最近才允许在HTML中使用(在HTML5中有效,在HTML4或更早版本中无效),但在CSS中仍然无效。我建议您避免使用它们。

可能您没有具有该ID的元素,这就是它中断for循环的原因,请尝试在代码的html部分初始化名称,如果正确执行,则不会在其中递增或递减(在for或foreach循环中)可能您正在为两个不同的循环使用相同的$i变量,或者更改其值(而不是$i++或$i-)

您可以将html代码部分放进去吗?您是否尝试过查看javascript控制台?似乎工作正常-。