我还是Javascript和Jquery的新手,并且遇到了这个问题。
我希望能够将带有select选项的字段集(#a)中的值传递给带有复选框选项的另一个字段集(#b)。例如,字段集#a具有默认选项1,2,3,4,5。 Fieldset #b可以有更多选项,但必须至少包含#a。
的默认选项字段集#a的代码段:
<fieldset id="a">
<legend><span>Default Option</span></legend>
<div class="fieldset_wrapper">
<select name="form_default">
<option value="">Select One</option>
<%=returnValueMap.get("defaultOptionSelect")%>
</select>
</div>
</fieldset>
字段集#b的代码段:
<fieldset id="b">
<legend><span>Option</span></legend>
<div class="fieldset_wrapper">
<div><input type="checkbox" name="select-all" id="select-all" class="checkAll"/> All Options</div>
<%=returnValueMap.get("optionSelect")%>
</div>
</fieldset>
编辑,这是我尝试的东西,但我想我显然错过了一些东西。再一次,我正在努力学习这些东西
$('#a option[name="form_default"]:selected').each(function(){
$('#b input[type="checkbox"]').eq($(this).index()).prop('checked',true);
});
答案 0 :(得分:0)
$('#a select').on('change', function(e){
e.preventDefault()
$('#b input[type="checkbox"][value="'+$(this).val()+'"]').prop("checked",true);
})
小解释:
$('#a select').on('change', function(e){
e.preventDefault()
$(this).val()
#b input[type="checkbox"][value="value selected in select box"]
.prop("checked",true)
可以帮到你
编辑:如果您想要默认选择的选项,请在页面加载时转到b
:
jQuery(function($){
$('#b input[type="checkbox"][value="'+$('#a select').val()+'"]').prop("checked",true);
});