1

我有一个由 PHP 响应的复选框。因此,复选框的 id 将是动态的。

所以,我想为document.getElementById().

下面是我的PHP代码:

echo "<td><input type='checkbox' name='edit$count' value='1' onclick='test($count)'></td>";

然后这是我的 Javascript 代码

function test(v)
    {
        var edit = "edit" + v;


        if(document.getElementById(edit).checked==true){
            alert(edit);
        }
    }

但是,当我单击复选框时,没有警报。

我的代码有问题吗?

4

2 回答 2

2

将 HTML 中的属性替换document.getElementByIddocument.getElementsByName[]或更改为s。您没有在 HTML 中使用属性,这就是返回的原因:nameididgetElementByIdnull

if (document.getElementsByName(edit)[v].checked == true) { ... }

您也不需要== trueif 语句的布尔上下文来处理它:

if (document.getElementsByName(edit)[v].checked) { ... }
于 2012-12-30T17:46:45.350 回答
0

答案是因为您name设置了输入,然后尝试通过id. 更改name='$count'id='$count'。对于未来:几乎所有浏览器都提供带有调试器的开发者工具,请随意使用它来调查 JavaScript 问题。

于 2012-12-30T17:50:35.947 回答