for循环在javascript中意外结束
我有一个调用这个函数的html按钮。但由于未知的原因,它只进行了3次迭代 有谁能帮我或者让我参考一些好的例子,为什么for循环在第三次迭代后会中断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
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控制台?似乎工作正常-。