如何获取在ajax select2插件中选择的值

Posted

技术标签:

【中文标题】如何获取在ajax select2插件中选择的值【英文标题】:how to get value selected in ajax select2 plugin 【发布时间】:2018-01-29 11:00:15 【问题描述】:

html

  <label>Customer PO</label>
  <select name="Customer_PO" class="form-control" id="Customer_PO" >
  <option value="" >Customer PO</option>
  </select>
-------------

jquery

$('body').on('click','#Customer_PO',function(e)
id_tosend=$(this).attr("id").toString();
var cust_id=$('#Customer_list').val();
var a=$('#'+id_tosend).select2(
  ajax: 
   url: 'ajax/report/inspection_report.php?cust_id='+cust_id,
   dataType: 'json',
   delay: 500,
   data: function (params) 
            var queryParameters = 
                q: params.term
            
            return queryParameters;
    ,
   processResults: function (data) 
        return 
            results: data
        ;
   ,
   cache:true
  

);


a.data('select2').dropdown.$dropdown.addClass("test");
$(this).select2('open');
);

我附加了 Select2 的插件。当我在表单中提交数据时,它显示为空值。我如何获取此值以在 ajax 方法中设置选定的初始值。

【问题讨论】:

How to set select value in select2 plugin - jquery的可能重复 我用这种方式搜索,但它没有改变选定的值,我在 ajax 中找到了这种方式,它不是完美的展示,如果你知道这一点... 【参考方案1】:

你可以试试这个

html

<label>Customer PO</label>
<select name="Customer_PO" class="form-control" id="Customer_PO" >
  <option value="" >Customer PO</option>
</select>

JQUERY

$.ajax(
            url: 'url',
            type: 'POST',
            data:  id: id,
            dataType: 'JSON',
            success: function (resp) 
                if(resp.msg == 'Done')
                    $("#Customer_PO option:selected").removeAttr("selected");

                    $.each(resp.yourListData, function (key, value) 
                      $("#Customer_PO ").append('<option value="'+value.ID+'">'+value.name+'</option>');

                    );
                    $("#Customer_PO ").trigger("change", [true]);
                
            ,
            error: function (e) 
                console.log("Line 1204");
                console.log(e.responseText);
            
        );    

【讨论】:

对不起,我迟到了。 yourListData 意味着,从 ajax 调用返回的数据。检查我编辑的答案 我使用了 select2 插件,如果您知道,请解决这个问题...

以上是关于如何获取在ajax select2插件中选择的值的主要内容,如果未能解决你的问题,请参考以下文章

如何使用配置了ajax搜索的select2 jquery插件实现选择所有功能。?

Yii2 - 使用 Ajax 加载为 Select2 插件设置值

使用 jquery select2 插件时,如果已列出 ajax 调用中的有效值,如何防止选择新标签?

在 PHP 中,如何使用 select2(Jquery 插件)显示选定的值

如何使select2插件下拉框多选并获取选中的值

select2 ajax 显示结果但无法选择