2013-07-31 97 views
0

我有一些工作良好的代碼,當一個複選框被選中時,它將禁用三個字段併爲這些字段設置值。jQuery檢查/取消選中事件

$(document).ready(function() { 
    $("#checkbox_1").change(function() { 
     $("#textbox_1").attr("disabled", $(this).attr("checked")); 
     $("#textbox_2").attr("disabled", $(this).attr("checked")); 
     $("#textbox_3").attr("disabled", $(this).attr("checked")); 
     $("#textbox_1").val(1); 
     $("#textbox_2").val("Classic"); 
     $("#textbox_3").val(1); 
    }); 
}); 

我的問題是,我該如何使它所以當沒有選中該複選框我可以設置這三個字段的值回?

回答

4

使用元素屬性,而不是屬性來設置元素的當前狀態:

$(document).ready(function() { 
    $("#checkbox_1").change(function() { 
     $("#textbox_1").prop("disabled", $(this).prop("checked")); 
     $("#textbox_2").prop("disabled", $(this).prop("checked")); 
     $("#textbox_3").prop("disabled", $(this).prop("checked")); 
     $("#textbox_1").val(1); 
     $("#textbox_2").val("Classic"); 
     $("#textbox_3").val(1); 
    }); 
}); 
+0

這應該與切換(協同工作)......我也喜歡用.prop(「檢查」,真);或.prop(「checked」,false);更加明確...... – carter

相關問題