【问题标题】:How do I display multi selected values in a div using jquery?如何使用 jquery 在 div 中显示多选值?
【发布时间】:2020-04-03 11:57:57
【问题描述】:

我希望能够使用 jquery 显示从多选到空 div 的值。 例如,在下面的代码中,我将如何使用 jquery 实现它?

<select multiple data-style="bg-white rounded-pill px-4 py-3 shadow-sm" class="selectnumber w-100 multiple searchable='Search here..'">
  <option>23</option>
  <option>17</option>
  <option>14</option>
  <option>11</option>
  <option>9</option>
</select>

<div class="numberselected">
  numbers selected should display here...
</div>

【问题讨论】:

标签: javascript jquery


【解决方案1】:

你可以在下面做一些事情

$(document).on('change', '.selectnumber', function(e){

var selected =   $('.selectnumber').val();
$('.numberselected').text(selected);


//console.log(selected);
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select multiple data-style="bg-white rounded-pill px-4 py-3 shadow-sm"
                        class="selectnumber w-100 multiple searchable='Search here..'">
                        <option>23</option>
                        <option>17</option>
                        <option>14</option>
                        <option>11</option>
                        <option>9</option>
                    </select><!-- End -->
                    <div class="numberselected">
                         //numbers selected should display here. 
                    </div>

【讨论】:

    【解决方案2】:

    使用jQuerychange 事件。

    $(document).ready(function(){
      $("#multi").change(function(){
        $("#numberselected").text($("#multi").val())
      });
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <select multiple data-style="bg-white rounded-pill px-4 py-3 shadow-sm"
        id="multi" class="selectnumber w-100 multiple searchable='Search here..'">
        <option>23</option>
        <option>17</option>
        <option>14</option>
        <option>11</option>
        <option>9</option>
    </select>
    <div class="numberselected" id="numberselected">
        numbers selected should display here...
    </div>

    【讨论】:

      【解决方案3】:

      请使用 jQuery 我希望下面的代码可以解决您的问题。如果它不起作用,请告诉我。

        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
        <select multiple data-style="bg-white rounded-pill px-4 py-3 shadow-sm" class="selectnumber w-100 multiple searchable='Search here..'" id="multi-select">
          <option value="23">23</option>
          <option value="17">17</option>
          <option value="14">14</option>
          <option value="11">11</option>
          <option value="9">9</option>
        </select><!-- End -->
        <div class="numberselected"> 
         //numbers selected should display 
        </div>
      
      <script>
      $(document).ready(function() {
        $("#multi-select")
          .change(function() {
            var str = "";
            $("#multi-select option:selected").each(function() {
              str += $(this).text() + " ";
            });
            $(".numberselected").text(str);
          })
          .change();
      });
      </script>
      

      【讨论】:

        【解决方案4】:

        使用 JQ:

           $(document).ready(function(){
            $('#test').on('change', function() {
              console.log( $(this).val() );
            });
            });
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
        <!-- begin snippet: js hide: false console: true babel: null -->
        
                <select id ="test" multiple data-style="bg-white rounded-pill px-4 py-3 shadow-sm" class="selectnumber w-100 multiple searchable='Search here..'">
                  <option>23</option>
                  <option>17</option>
                  <option>14</option>
                  <option>11</option>
                  <option>9</option>
                </select>

        【讨论】:

          【解决方案5】:

          您没有选项值,所以我将显示 2 个变体。

          $('#my-select').change(function(){
            //Get selected options
            let selectedOptions = $(this).children('option:selected');
            
            //Get text of selected options
            let textValues = selectedOptions
              .map(function(){return $(this).text()})
              .toArray();
              
            //Get values of selected options
            let valValues = selectedOptions
              .map(function(){return $(this).val()})
              .toArray();
              
            //Show them in divs
            $('#show-by-text').html(textValues.join(','));
            $('#show-by-value').html(valValues.join(','));
          })
          <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
          <select multiple id="my-select">
            <option value="1">one</option>
            <option value="2">two</option>
            <option value="3">three</option>
          </select>
          <br>
          By text:
          <div id="show-by-text">
          </div>
          By value:
          <div id="show-by-value">
          </div>

          【讨论】:

          • 仅供参考,如果没有value 属性,则使用文本。不管怎样,value 总是被设置。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-03-09
          • 2010-11-27
          • 2019-06-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多