Select2 4.0.3 Ajax总是返回'结果未找到'

时间:2017-06-29 12:18:32

标签: jquery json ajax jquery-select2

我尝试使用select2 ajax,因此结果只会在用户输入后显示。

这是我的select2代码:

$("#itemize_tracking_no").select2({ 
    placeholder: "Courier Tracking #", 
    debug: true, 
    minimumInputLength: 2, 
    allowClear: true, 
    delay: 250, 
    ajax: { 
        url: "ajax_tracking_no", 
        dataType: 'json', 
        type: "GET",
        data: function (params) { 
            return {
                term: params.term
            };
        }, 
        processResults: function(data, params){
            return {
                results: $.map(data.courier_tracking_no, function(courier_tracking_no){
                    return { id: courier_tracking_no.id, text: courier_tracking_no.courier_tracking_no }
                })
            };
        },
        escapeMarkup: function (markup) { return markup; }
    } 
});

我的JSON回复:

    {"result":[
        {"id":"1","courier_tracking_no":"4800417009445"},
        {"id":"9","courier_tracking_no":"6954176812345"},
        {"id":"22","courier_tracking_no":"wetweg"},
        {"id":"26","courier_tracking_no":"JM001PCS"},
        {"id":"27","courier_tracking_no":"9092501010017"},
        {"id":"28","courier_tracking_no":"4806513103018"},
        {"id":"29","courier_tracking_no":"4801981112005"},
        {"id":"30","courier_tracking_no":"4800047820182"},
        {"id":"31","courier_tracking_no":"Test01"},
        {"id":"32","courier_tracking_no":"Test02"},
        {"id":"33","courier_tracking_no":"Test03"},
        {"id":"35","courier_tracking_no":"Test00001"}
        ]
    }

当我输入应生成wet的{​​{1}}时,而不是{"id":"22","courier_tracking_no":"wetweg"}

可能是我的错误?

我很感激你的帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

This 为我做了诀窍。我没想到我的情况有所不同,因为我在 CodeIgniter 中使用它。我刚刚修改了我的代码以获取模型中的数据,而不是在控制器中加载数据库。