如果文本框已填满,如何自动取消选中复选框

时间:2012-12-28 03:52:13

标签: javascript checkbox default textfield

我已将复选框设为默认检查。如果填写了某些文本字段,如何自动取消选中该复选框。我一直在考虑使用javascript。


我尝试使用此

<input type="text" name="commentID" id="commentID" onkeyup="userTyped('skipID', this)"/>
<input type="checkbox" name="skipID" value="N" id="skipID" checked="checked"  />

和javascript

function userTyped(commen, e){
if(e.value.length > 0){
    document.getElementById(commen).checked=false;
}else{
    document.getElementById(commen).checked=true;
}}​

它有效,但如果我有3个文本字段,并且我希望仅在填写所有文本字段后填充复选框。

5 个答案:

答案 0 :(得分:1)

这样做:

<input type="checkbox" id="someid" checked="checked"/>

<textarea onchange="if (this.value != '') document.getElementById('someid').checked = false;"></textarea>

答案 1 :(得分:1)

 if(document.getElementById('yourtextBox').value!=' ')
 {
    document.getElementById('checbox').checked=false;
 } 

答案 2 :(得分:0)

尝试以下代码。在此代码中,每次在文本字段中键入字符时,将调用该函数并且textfield值的长度不为零,将取消选中checbox并在清除文本字段时检查该字符

//Function get called when you type each letter
function OnChangeTextField(){
    //getting the length of your textbox
    var myLength = $("#myTextbox").val().length;
    if(myLength > 0){
        $("#myCheckbox").attr("checked", false);
    }else{
           $("#myCheckbox").attr("checked", true);
        }

}


<input type = "text" id = "myTextbox" onkeyup= "OnChangeTextField();"/>
<input type="checkbox" id = "myCheckbox" value = "true" checked = "checked"/>

答案 3 :(得分:0)

$("#comment").on("keyup blur", function () {
    $("#box").prop("checked", this.value == "");
});

EDIT: You can also use jQuery

答案 4 :(得分:-1)

 $("#comment").on("keyup blur", function() {
    $("#box").prop("checked", this.value == "");
});

Try jQuery, This works for me...