问:如何使用复选框启用/禁用输入?
每个复选框旁边的启用/禁用输入。组数是多种(i = 1,2,3,... n)。 默认设置是禁用输入并取消选中复选框。
JsFiddle: http://jsfiddle.net/tDCB9/
HTML:
<input type="checkbox" name="group1" value="">
<input type="text" name="name11" class="stat" value="">
<input type="text" name="name12" class="stat" value="">
<input type="text" name="name13" class="stat" value="">
JS:
$("input[name="group1"][type="checkbox"]").click(function() {
$("input[name="name11"][type="text"]").attr("disabled", !this.checked);
$("input[name="name12"][type="text"]").attr("disabled", !this.checked);
$("input[name="name13"][type="text"]").attr("disabled", !this.checked);
});
答案 0 :(得分:4)
您需要为复选框编写一个change()处理程序,然后使用nextUntil()找出要禁用的输入字段
$('input[type="checkbox"]').change(function(){
$(this).nextUntil(':not(input:text)').prop('disabled', !this.checked)
}).change()
演示:Fiddle
答案 1 :(得分:1)
答案 2 :(得分:0)
试试这个:
$("input[name='group1'][type='checkbox']").click(function() {
if($(this).prop('checked')){
$("input[name='name11'][type='text']").attr("disabled", 'disabled');
}
else{
$("input[name='name11'][type='text']").removeAttr("disabled");
}
});
答案 3 :(得分:0)
$('input[type="checkbox"]').click(function() {
$(this).siblings('input').attr('disabled', this.checked);
});
您只需要将容器中的输入组分开。
答案 4 :(得分:0)
试试这个
$("input[name='group1'][type='checkbox']").click(function() {
$("input[name='name11'][type='text']").attr("disabled", !this.checked);
$("input[name='name12'][type='text']").attr("disabled", !this.checked);
$("input[name='name13'][type='text']").attr("disabled", !this.checked);
});
答案 5 :(得分:0)
您可以使用简单的选择器:
$('input:checkbox').change(function(){
$(this).nextUntil('br').prop('disabled', !this.checked)
}).change();
答案 6 :(得分:0)
试试这个
$("input[name='group1'][type='checkbox']").click(function() {
$("input[name='name11'][type='text']").attr("disabled", this.checked);
$("input[name='name12'][type='text']").attr("disabled", this.checked);
$("input[name='name13'][type='text']").attr("disabled", this.checked);
});