Javascript 为getElementById使用变量
我有一个复选框,PHP正在响应它。因此,复选框的id将是动态的 因此,我想为Javascript 为getElementById使用变量,javascript,Javascript,我有一个复选框,PHP正在响应它。因此,复选框的id将是动态的 因此,我想为document.getElementById()使用一个变量 下面是我的PHP代码: echo "<td><input type='checkbox' name='edit$count' value='1' onclick='test($count)'></td>"; 但是,当我单击复选框时,没有警报 我的代码有问题吗?用document.getElementsByName[]替换
document.getElementById()
使用一个变量
下面是我的PHP代码:
echo "<td><input type='checkbox' name='edit$count' value='1' onclick='test($count)'></td>";
但是,当我单击复选框时,没有警报
我的代码有问题吗?用
document.getElementsByName[]
替换document.getElementById
,或者将HTML中的名称
属性更改为id
s。您没有在HTML中使用id
属性,这就是getElementById
返回null
的原因:
if (document.getElementsByName(edit)[v].checked == true) { ... }
您也不需要==true
,因为if语句的布尔上下文将处理它:
if (document.getElementsByName(edit)[v].checked) { ... }
答案是因为您设置了输入的
name
,然后试图通过id
获取它。将name='$count'
更改为id='$count'
。未来:几乎任何浏览器都会为开发人员工具提供调试器,请随意使用它来调查JavaScript问题。$count是一个变量,在每个循环中都会不断增加+1。复选框中没有id
,而是name
。你不应该关心你的php代码,但您应该关心它生成什么html。右键单击>查看html源代码。你会看到你的问题解决了!感谢@Sheikheeraoh等等。右@sheikheera设置了名称,但没有ID。这就是问题所在。
if (document.getElementsByName(edit)[v].checked) { ... }