javascript - 使用 jquery 或 javascript 使用相同的 id 创建自动选择框

标签 javascript jquery html

我有四个选择框。如果我选​​择一个选择框,我想自动选择另外三个选择框。我可以做到,但它不能使用相同的 id。我想在其他选择框中使用相同的 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();

});

最佳答案

比你想象的简单多了,给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>

关于javascript - 使用 jquery 或 javascript 使用相同的 id 创建自动选择框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47784758/

相关文章:

html - 带有用于选择每一行的复选框的 HTML 表格是否应该包含在带有图例元素的字段集中?

javascript - 为什么 React Router 是一个 React 组件?

javascript - 尝试在 jQuery 验证中执行自定义消息时出现错误

javascript - 如何在未选中单选按钮时隐藏内容并允许查看其他内容

javascript - 关于修改 Node 原型(prototype)的担忧

javascript - 如何将 p5.js soundFile 转换为文件 javascript 类?

jquery - 无论如何检查容器高度并相应地更改 CSS?

javascript - Three.js:将图像添加到 6 立方体全景中的纹理底部作为热点

javascript - 风格化的控制台日志记录

Javascript向具有相同类的元素添加样式