简体   繁体   English

使用与jQuery或JavaScript相同的ID创建自动选择框

[英]creating auto select box using same id with jquery or javascript

I have four select box.If I choose one select box, I want to choose another three select box automatically.I could do it but it can't use same id .I want to use same id in other select box without changing id.How can I do that?Please help me. 我有四个选择框。如果我选​​择一个选择框,我想自动选择另一个三个选择框。我可以做到,但是不能使用相同的ID。我想在其他选择框中使用相同的ID而无需更改ID。我该怎么办?请帮帮我。

Html 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 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();

}); });

It's way more simpler than you expected, setting the value to the select, will select the corresponding option, like this: 比您预期的要简单得多,将值设置为select,将选择相应的选项,如下所示:

  $(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(); }); 
 <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> 

Expanding on Marcelo Origoni's answer, you can also use the .siblings() function for selecting all other <select> s at once. 扩展Marcelo Origoni的答案,您还可以使用.siblings()函数一次选择所有其他<select> Note that if there is any other elements on the same level, you might want to do .siblings('select') instead of just .siblings() . 请注意,如果同一级别上还有其他元素,则可能需要执行.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> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM