选中/取消选中复选框时禁用/启用更改

时间:2015-03-09 12:57:35

标签: jquery

我想结合这两个jquery的东西:Disable/enable an input with jQuery?JQuery check if checkbox is NOT checked

HTML:

<label>
    <input type="checkbox" name="agreement"> I read all the information in the red box above and followed the instructions!
</label>
<br/>
<input disabled="disabled" type="submit" name="submit">

jQuery的:

$( document ).ready(function() {
    if($("input[name=agreement]").prop('checked') == true){
        $("input[name=submit]").prop('disabled', false);
    } else {
        $("input[name=submit]").prop('disabled', true);
    }
}

演示:http://jsfiddle.net/Zoker/32w5kcf8/

但它不起作用。 谁能告诉我为什么?

2 个答案:

答案 0 :(得分:1)

您需要使用更改处理程序

$( document ).ready(function() {
    $("input[name=agreement]").change(function(){
        $("input[name=submit]").prop('disabled', !this.checked);
    })
})

演示:Fiddle

答案 1 :(得分:1)

有一个简单的解决方案 首先,你需要在jsfiddle中使用jQuery库来使用jQuery的指令:)

首先检查html因为我已经为输入添加了class和id属性:) 这是你的jQuery问题的解决方案

$(".agreement").on('click', function() {
   if($(this).is(':checked')){
        $(".send").prop('disabled',false);
    } else {
        $(".send").prop('disabled',true);
    }
})

jQuery example

这里是纯javaScript

function checkboxed() {
    var agreement,send;
    agreement= document.getElementById('agreement');
    send = document.getElementById('send');
    if(agreement.checked == true) {
        send.disabled = false;        
    } else {
        send.disabled = true;   
    }
}

javascript example