繁体   English   中英

Javascript和复选框

[英]Javascript and Checkboxes

我正在尝试创建一个复选框,该复选框将在单击时更改表单操作。 首先,我将其设置为根据是否已检查但没有任何反应来提醒消息。 请帮我!

JavaScript:

function toggleAction(){
var check = document.getElementById('checkb').checked;
   if (checked == "1"){
    alert("is checked");
   }else{
    alert("is not checked"); }
}

HTML:

<INPUT TYPE="checkbox" id="checkb" onclick="toggleAction()">Add Another<br>

您的主要问题是您将变量命名为check但随后在if语句中查找了checked 其次,请注意, .checked是布尔值( truefalse ),但是您正在将其与字符串“ 1”进行比较。 碰巧可以正常工作,但是不建议这样做。

尝试:

if (check) alert("is checked");
else       alert("is not checked");

比在处理程序中显式使用getElementById更好的方法是,使用对处理事件的复选框的引用:

document.getElementById('checkb').onclick = toggleAction;
function toggleAction(){
  if (this.checked) alert('yes');
  else              alert('no');
}

请注意上面的内容中,我还如何使用JavaScript以编程方式分配了事件处理程序,而不是使用onclick="..." HTML属性。 这被认为是“最佳实践”; 您不应该直接在HTML中编写JavaScript。

if(checked == "1")应为if(check)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM