2010-12-20 100 views
1

我希望检查/取消选中复选框,并使其启用/禁用提交按钮。 Javascript会触发,不会显示错误,但提交输入不会多次切换。复选框启用/禁用提交作品只有一次,jquery

JS:

$('#readTerms').change(function() { 
    var buttonsChecked = $('#readTerms:checked'); 
    if (buttonsChecked.length) 
    { 
     $('#submitBusiness').removeAttr('disabled'); 
    } 
    else 
    { 
     $('#submitBusiness').attr('disabled', 'disabled'); 
    } 
}); 

HTML:

<input type="checkbox" id="readTerms" name="agree"> <label for="agree">By checking the box you agree to the <a href="/terms" target="_blank">Terms &amp; Conditions</a>.</label> 

<input id="submitBusiness" class="btn positive iconCheck right" type="submit" name="create" value="Submit" disabled="disabled" /> 

提交按钮开始禁用。点击复选框并启用它,再次点击复选框,没有任何东西。 if/else语句正常工作。代码触发,它在萤火虫等行为断点等。

我在做什么错?

+0

对我的作品;什么浏览器,jQuery版本?尝试'attr('disabled',true)' – ysth 2010-12-20 07:07:20

回答

2

我会尝试这样的事情,而不是:

$('#readTerms').click(function() { 
    var buttonsChecked = this.checked; 
    if (buttonsChecked == true){ 
     $('#submitBusiness').removeAttr('disabled'); 
    }else{ 
     $('#submitBusiness').attr('disabled', 'disabled'); 
    } 
});