Jquery 选中相应标签内的复选框时启用输入字段

Jquery 选中相应标签内的复选框时启用输入字段,jquery,Jquery,我想根据复选框启用/禁用表单中字段的编辑。如果选中复选框,则必须启用其输入,如果未选中,则禁用其输入。我为每个字段都编写了一些脚本代码,但我正在寻找一个通用代码,而不是为每个字段编写代码。任何人都可以帮助我使用jquery高效地实现这一点 $('#nCheck')。单击(函数(){ $('input[name=“name”]”)。attr('disabled',false); }); $('#pCheck')。单击(函数(){ $('input[name=“Position”]”)。attr(

我想根据复选框启用/禁用表单中字段的编辑。如果选中复选框,则必须启用其输入,如果未选中,则禁用其输入。我为每个字段都编写了一些脚本代码,但我正在寻找一个通用代码,而不是为每个字段编写代码。任何人都可以帮助我使用jquery高效地实现这一点

$('#nCheck')。单击(函数(){
$('input[name=“name”]”)。attr('disabled',false);
});
$('#pCheck')。单击(函数(){
$('input[name=“Position”]”)。attr('disabled',false);
});
$('#oCheck')。单击(函数(){
$('input[name=“Office”]”)。attr('disabled',false);
});
$('#aCheck')。单击(函数(){
$('input[name=“Age”]”)。attr('disabled',false);
});
$('#dCheck')。单击(函数(){
$('input[name=“sDate”]”)。attr('disabled',false);
});
$('#sCheck')。单击(函数(){
$('input[name=“Salary”]”)。attr('disabled',false);
});
$('#phCheck')。单击(函数(){
$('input[name=“Phone”]”)。attr('disabled',false);
});
$('#salCheck')。单击(函数(){
$('input[name=“ProSalary”]”)。attr('disabled',false);
});
$('#phoneCheck')。单击(函数(){
$('input[name=“ProPhone”]”)。attr('disabled',false);
});

名称
位置
办公室
年龄
开始日期
薪水
电话
保存更改
检查以下内容

jQuery(文档).ready(函数($){
$('input.maxtickets\u enable\u cb')。更改(函数(){
如果($(this).is(':checked'))
$(this).next('div.max_tickets').show();
其他的
$(this.next('div.max_tickets').hide();
}).change();
});

支票1
支票2
支票3

您正在寻找的技术称为“不要重复自己”或“干燥”

要实现这一点,可以使用类选择器和DOM遍历将逻辑的公共部分提取到单个事件处理程序中。在使用
find()
获取要启用/禁用的
输入之前,请特别使用
:复选框
选择器和
最近的()
方法获取父级
。表单组
。试试这个:

$('.form group:checkbox')。在('change',function()上{
var$checkbox=$(此项);
var$group=$checkbox.closest('.formgroup');
$group.find('.form control').prop('disabled',!this.checked);
});

名称
位置
办公室
年龄
开始日期
薪水
电话
保存更改

我想禁用/启用字段编辑。请参考我在问题中提到的JSFIDLE。我对每个字段都有一些临时代码,但我在寻找一个通用代码,而不是为每个字段编写代码。你能帮我吗谢谢你的详细解释没问题,很高兴能帮你。你能告诉我如何读取选择框的值(是/否)我想在单击savechanges按钮时读取选择框的值。你能告诉我怎么做吗。请查看更新的小提琴,该小提琴中没有
select
,但是您可以使用
val()
读取所选选项的值。如果您有其他问题,我建议您开始一个新问题,因为您可能会更快地获得帮助。