如何 show/hide 复选框是否被选中的内容
How to show/hide content if a checkbox is checked or not
我有一些 jQuery 将 show/hide 隐藏 div 取决于在下拉字段中选择的值:
$('.hidden-content-here').hide();
$('select[name="my_field_name_here"]')
.on('change', function() {
var $this = $(this),
selected = $this.find(':selected').val(),
options = ['Yes'];
$('.hidden-content-here').hide();
if(options.indexOf(selected) > -1) {
$('.my_field_name_here').toggle();
}
})
.trigger('change');
这里是 HTML:
<label>Hide/Unhide Hidden Content</label>
<select name="my_field_name_here">
<option value="No">No</option>
<option value="Yes">Yes</option>
</select>
<div class="hidden-content-here">
<!--Hidden content here-->
</div>
这很好用 - 如果页面加载并且下拉字段的值已经是 'Yes',那么将显示隐藏的内容。如果页面加载并且下拉列表没有 'Yes' 的值,则不会显示隐藏的内容。 And it will change when different values are selected.
我的问题是我需要将该字段从下拉列表更改为复选框,但我不知道如何更改 jQuery 以改为使用这种不同类型的字段。如果选中,复选框字段的值为 'Yes',HTML 将如下所示:
Hide/Unhide 隐藏内容
感谢您对此的任何帮助。
您可以使用更改事件连同复选框的状态 checked/unchecked 作为 .toggle()
函数的参数来做出 .my_field_name_here
:
的显示隐藏决定
$('input[name="my_field_name_here"]').on('change', function() {
$('.my_field_name_here').toggle(this.checked);
}).trigger('change');
我有一些 jQuery 将 show/hide 隐藏 div 取决于在下拉字段中选择的值:
$('.hidden-content-here').hide();
$('select[name="my_field_name_here"]')
.on('change', function() {
var $this = $(this),
selected = $this.find(':selected').val(),
options = ['Yes'];
$('.hidden-content-here').hide();
if(options.indexOf(selected) > -1) {
$('.my_field_name_here').toggle();
}
})
.trigger('change');
这里是 HTML:
<label>Hide/Unhide Hidden Content</label>
<select name="my_field_name_here">
<option value="No">No</option>
<option value="Yes">Yes</option>
</select>
<div class="hidden-content-here">
<!--Hidden content here-->
</div>
这很好用 - 如果页面加载并且下拉字段的值已经是 'Yes',那么将显示隐藏的内容。如果页面加载并且下拉列表没有 'Yes' 的值,则不会显示隐藏的内容。 And it will change when different values are selected.
我的问题是我需要将该字段从下拉列表更改为复选框,但我不知道如何更改 jQuery 以改为使用这种不同类型的字段。如果选中,复选框字段的值为 'Yes',HTML 将如下所示:
Hide/Unhide 隐藏内容
感谢您对此的任何帮助。
您可以使用更改事件连同复选框的状态 checked/unchecked 作为 .toggle()
函数的参数来做出 .my_field_name_here
:
$('input[name="my_field_name_here"]').on('change', function() {
$('.my_field_name_here').toggle(this.checked);
}).trigger('change');