我有以下简单页面:
<html>
<head>
<script type="text/javascript">
function check(){
var cb = document.getElementById('aaa');
if(!cb.checked()){
alert("test!!!");
}
}
</script>
</head>
<body>
<input id="aaa" type="checkbox" name="modify" onclick="check()">Modify</input>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
如果我按下该复选框,我会在 javascript 控制台中看到以下错误:
Uncaught TypeError: Property 'checked' of object #<HTMLInputElement> is not a function
check
onclick
Run Code Online (Sandbox Code Playgroud)
我也尝试过documents.getElementsByName('modify')同样的问题。
我在这里做错了什么?
checked正如错误消息所述,不是一个函数。
使用
if(!cb.checked){
Run Code Online (Sandbox Code Playgroud)
(不带括号)
请注意,您不必使用 查找元素getElementById,您可以传递该元素:
<input id="aaa" type="checkbox" name="modify" onclick="check(this)">Modify
function check(cb){
if(!cb.checked()){
alert("test!!!");
}
}
Run Code Online (Sandbox Code Playgroud)
另请注意,该input元素不应关闭。这里您可能需要的是标签element,它可以让您单击文本来(取消)选中该框:
<input id="aaa" type="checkbox" name="modify" onclick="check(this)">
<label for=aaa>Modify</label>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7333 次 |
| 最近记录: |