相关疑难解决方法(0)

使用Ajax选择2 4.0.0初始值

我有一个从Ajax数组填充的select2 v4.0.0.如果我设置select2的val我可以通过javascript调试看到它已经选择了正确的项目(在我的情况下为#3),但是这没有显示在选择框中,它仍然显示占位符. 在此输入图像描述

我应该看到这样的事情: 在此输入图像描述

在我的表单字段中:

<input name="creditor_id" type="hidden" value="3">
<div class="form-group minimal form-gap-after">
    <span class="col-xs-3 control-label minimal">
        <label for="Creditor:">Creditor:</label>
    </span>
    <div class="col-xs-9">
        <div class="input-group col-xs-8 pull-left select2-bootstrap-prepend">
            <select class="creditor_select2 input-xlarge form-control minimal select2 col-xs-8">
                <option></option>
            </select>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我的javascript:

var initial_creditor_id = "3";
$(".creditor_select2").select2({
    ajax: {
       url: "/admin/api/transactions/creditorlist",
       dataType: 'json',
       delay: 250,
       data: function (params) {
           return {
                q: params.term,
                c_id: initial_creditor_id,
                page: params.page
           };
       },
       processResults: function (data, page) {
            return {
                results: data
            };
       },
       cache: true
   }, …
Run Code Online (Sandbox Code Playgroud)

jquery-select2-4

96
推荐指数
6
解决办法
12万
查看次数

如何在输入框上设置默认值,并在其上初始化select2

如何使用select2在输入框上设置默认值?这是我的HTML

<input type="text" id="itemId0" value="Item no. 1">
Run Code Online (Sandbox Code Playgroud)

和我的javascript:

    $("#itemId0").select2({
    placeholder: 'Select a product',
    formatResult: productFormatResult,
    formatSelection: productFormatSelection,
    dropdownClass: 'bigdrop',
    escapeMarkup: function(m) { return m; },
    minimumInputLength:1,
    ajax: {
        url: '/api/productSearch',
        dataType: 'json',
        data: function(term, page) {
            return {
                q: term
            };  
        },  
        results: function(data, page) {
            return {results:data};
        }   
    }   
});

function productFormatResult(product) {
   var html = "<table><tr>";
   html += "<td>";
   html += product.itemName ;
   html += "</td></tr></table>";
   return html;
}

function productFormatSelection(product) {
var selected = "<input type='hidden' name='itemId' …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

25
推荐指数
3
解决办法
8万
查看次数

用AJAX数据填充Select2

我正在使用Select2 4.0.0-rc.2。

选项”页面指出以下内容:initSelection

过去,Select2要求initSelection在使用自定义数据源时就定义一个选项,从而可以确定组件的初始选择。它已由数据适配器current上的方法代替。

我仅找到了使用的旧版本Select2的示例initSelection(请参阅使用Ajax在Select2上设置加载时的初始值

如何使用数据适配器加载默认数据?

这是我的初始代码(是树枝)

 $("#{{ id }}").select2({
            ajax: {
                    url: "{{ path(attr.path) }}",
                    dataType: 'json',
                    {% if attr.placeholder is defined %}
                    placeholder: '{{ attr.placeholder }}',
                    {% endif %}
                    delay: 250,
                    data: function (term) {
                        return term;
                    },
                    processResults: function (data) {
                        return {results: data};
                    }

                },
            templateResult: function(data){
                return '<img width="30" src="'+data.image+'">'+data.text;
            },
            templateSelection: function(data){
                return '<img width="30" src="'+data.image+'">'+data.text;
            },

            cache: true,
            escapeMarkup: function (markup) …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-select2

5
推荐指数
2
解决办法
1万
查看次数