简体   繁体   English

Select2 使用 JS 选择选项

[英]Select2 select option with JS

<div class="row justify-content-center align-items-center h-300">
   <div class="col col-sm-6 col-md-6 col-lg-4 col-xl-3">
      <div class="form-group">
         <select class="mul-select-gift" multiple="true">
            <?php 
               if(mysqli_num_rows($prolist_res11) > 0 ){
                                                                                 
                   while($row = mysqli_fetch_assoc($prolist_res11)){ ?>  
            <option value="<?php echo $row['proid'];?>"> <?php echo $row['proname'];?> </option>
            <?php
               }                   
             }
          ?>
         </select>
      </div>
   </div>
</div>

This is my select2 Multi-select list.这是我的 select2 Multi-select列表。

I need to select some options from the list based on ajax success response.我需要根据 ajax 成功响应从列表中选择一些选项。

Code inside ajax success response is mentioned below: ajax成功响应中的代码如下:

success: function(data) {                
  if(type == 'q_dis') {                    
  var msg   = $.parseJSON(data);                         
  var product_or_catagory = msg.product_or_catagory;                        
  var id_string = msg.id_string;
  const ids = id_string.split("_sx_");
  var sid = ids[0];
  var dtail_string =  msg.dtail_string;
  if(product_or_catagory == 'prod' ) {
    document.getElementById('product_list').style.display = 'block';
    $('#mul-select-gift').val(sid).trigger('change')                            
    // $('#mul-select-quantity').select2('data', {id: 1127, text: 'Blue_Grass'});
  }                     
}                
},

But it is not working.但它不起作用。 Can anyone help, please任何人都可以帮忙,请

Thanks in advance提前致谢

You need select your select box by the corresponding id or class .您需要通过相应的idclass选择您的选择框。 In your case it is mul-select-gift class and then use val and trigger('change') like this:在您的情况下,它是mul-select-gift类,然后像这样使用valtrigger('change')

$('.mul-select-gift').val(["val1" , "val2"]).trigger('change') 

Here is working sample:这是工作示例:

 $(document).ready(function () { $('.mul-select-gift').select2({ width: '200px' }); }); function select() { $('.mul-select-gift').val(["AL2" , "AL3"]).trigger('change') }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" /> <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script> <div class="row justify-content-center align-items-center h-300"> <div class="col col-sm-6 col-md-6 col-lg-4 col-xl-3"> <div class="form-group"> <select class="mul-select-gift" multiple="multiple"> <option value="AL1">Al1</option> <option value="AL2">Al2</option> <option value="AL3">Al3</option> <option value="AL4">Al4</option> <option value="AL5">Al5</option> </select> </div> </div> <button onclick="select()">click to select AL2 and AL3</button> </div>

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

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