我有四个选择框。如果我选择一个选择框,我想自动选择另外三个选择框。我可以这样做,但它不能使用相同的ID。我想在其他选择框中使用相同的ID改变身份。如何做到这一点?请帮助我。
HTML
<select class="selectbox" name="select1" id="select1">
<option value="1">Business Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select2" id="select2">
<option value="1">Chinese</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select3" id="select3">
<option value="1">English Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select4" id="select4">
<option value="1">Korea Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
Jquery的
$(document).ready(function(){
$('#select1').on('change' , function(){
var getVal = $(this).val();
$('#select2 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select3 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select4 option[value="'+getVal+'"]').show().first().prop('selected' , true);
}).change();
$('#select2').on('change' , function(){
var getVal = $(this).val();
$('#select1 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select3 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select4 option[value="'+getVal+'"]').show().first().prop('selected' , true);
}).change();
$('#select3').on('change' , function(){
var getVal = $(this).val();
$('#select1 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select2 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select4 option[value="'+getVal+'"]').show().first().prop('selected' , true);
}).change();
$('#select4').on('change' , function(){
var getVal = $(this).val();
$('#select1 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select2 option[value="'+getVal+'"]').show().first().prop('selected' , true);
$('#select3 option[value="'+getVal+'"]').show().first().prop('selected' , true);
}).change();
});
答案 0 :(得分:0)
它比预期的更简单,将值设置为选择,将选择相应的选项,如下所示:
$(document).ready(function(){
$('#select1').on('change' , function(){
$('#select2').val($(this).val());
$('#select3').val($(this).val());
$('#select4').val($(this).val());
}).change();
$('#select2').on('change' , function(){
$('#select1').val($(this).val());
$('#select3').val($(this).val());
$('#select4').val($(this).val());
}).change();
$('#select3').on('change' , function(){
$('#select2').val($(this).val());
$('#select1').val($(this).val());
$('#select4').val($(this).val());
}).change();
$('#select4').on('change' , function(){
$('#select2').val($(this).val());
$('#select3').val($(this).val());
$('#select1').val($(this).val());
}).change();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="selectbox" name="select1" id="select1">
<option value="1">Business Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select2" id="select2">
<option value="1">Chinese</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select3" id="select3">
<option value="1">English Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select4" id="select4">
<option value="1">Korea Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
&#13;
答案 1 :(得分:0)
扩展Marcelo Origoni的答案,您还可以使用.siblings()
功能一次性选择所有其他<select>
。请注意,如果同一级别上有任何其他元素,您可能需要执行.siblings('select')
而不只是.siblings()
。
$(document).ready(function(){
$('#select1, #select2, #select3, #select4').on('change' , function(e){
$(this).siblings().val($(this).val());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="selectbox" name="select1" id="select1">
<option value="1">Business Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select2" id="select2">
<option value="1">Chinese</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select3" id="select3">
<option value="1">English Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>
<select class="selectbox" name="select4" id="select4">
<option value="1">Korea Center</option>
<option value="2">Option 1</option>
<option value="3">Option 2</option>
<option value="4">Option 3</option>
<option value="5">Option 4</option>
</select>