Jquery 选中相应标签内的复选框时启用输入字段
我想根据复选框启用/禁用表单中字段的编辑。如果选中复选框,则必须启用其输入,如果未选中,则禁用其输入。我为每个字段都编写了一些脚本代码,但我正在寻找一个通用代码,而不是为每个字段编写代码。任何人都可以帮助我使用jquery高效地实现这一点Jquery 选中相应标签内的复选框时启用输入字段,jquery,Jquery,我想根据复选框启用/禁用表单中字段的编辑。如果选中复选框,则必须启用其输入,如果未选中,则禁用其输入。我为每个字段都编写了一些脚本代码,但我正在寻找一个通用代码,而不是为每个字段编写代码。任何人都可以帮助我使用jquery高效地实现这一点 $('#nCheck')。单击(函数(){ $('input[name=“name”]”)。attr('disabled',false); }); $('#pCheck')。单击(函数(){ $('input[name=“Position”]”)。attr(
$('#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()
读取所选选项的值。如果您有其他问题,我建议您开始一个新问题,因为您可能会更快地获得帮助。