如果选中复选框,则立即提醒

时间:2015-06-22 12:22:31

标签: javascript html event-handling

所以,我的目标是:如果用户选中了复选框,请执行某些操作(让我们说出一个警告)。这是我的代码,不起作用:

function validate() {
    if (document.getElementById('LetterNeed').checked) {
        alert("checked");
    } else {
        alert("You didn't check it! Let me check it for you.");
    }
}    

<input type="checkbox" name="LetterNeed" id="LetterNeed">Not important</span>

感谢您的帮助!

4 个答案:

答案 0 :(得分:3)

调用复选框状态validate上的change功能。

<input type="checkbox" name="LetterNeed" id="LetterNeed" onchange="return validate()">Not important</span>
//                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

document.getElementById('LetterNeed').addEventListener('change', validate);

DEMO

答案 1 :(得分:2)

旧方法

validate() 标记中调用 <input> 函数

function validate() {
    if (document.getElementById('LetterNeed').checked) {
        alert("checked");
    } else {
        alert("You didn't check it! Let me check it for you.");
    }
}    
<input type="checkbox" name="LetterNeed" id="LetterNeed" onclick="validate()">Not important</span>

事件处理方法

function validate() {
  if (this.checked) {
    alert("checked");
  } else {
    alert("You didn't check it! Let me check it for you.");
  }
}

document.getElementById('LetterNeed').addEventListener('click', validate);
<input type="checkbox" name="LetterNeed" id="LetterNeed"><span>Not important</span>

答案 2 :(得分:0)

另一方面,您可以在eventlistener上添加DOMContentLoaded,如下所示:

document.addEventListener('DOMContentLoaded', function () {
      document.querySelector('#LetterNeed').addEventListener('change', validate);
});

validate

的功能
function validate(e){
     if(e.target.checked)
     { 
        alert("Checked"); 
     } 
     else{ 
        alert("Not checked"); 
     } 
}

答案 3 :(得分:0)

尝试以下更改:

function validate(aCheckBox) {
  if (aCheckBox.checked) {
    alert("checked");
  } else {
    alert("You didn't check it! Let me check it for you.");
  }
}    

<input type="checkbox" name="LetterNeed" id="LetterNeed" onclick="validate(this)">Not important</input>