Javascript 选择2选项templateResult不被调用

Javascript 选择2选项templateResult不被调用,javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,我想使用option使用select2 v4格式化我的结果。我有以下代码: $(".search").select2({ minimumInputLength: 3, ajax: { url: url, dataType: 'json', delay: 250, processResults: function (data) { return { results

我想使用option使用select2 v4格式化我的结果。我有以下代码:

$(".search").select2({
    minimumInputLength: 3,
    ajax: {
        url: url,
        dataType: 'json',
        delay: 250,
        processResults: function (data) {
            return {
                results: data.items
            };
        },
        templateResult: function (data) {
            console.log('templateResult');
            return '<span><img src="//example.com/img.png" /> ' + data.text + '</span>';
        },
    }
});
$(“.search”)。选择2({
最小输入长度:3,
阿贾克斯:{
url:url,
数据类型:“json”,
延误:250,
processResults:函数(数据){
返回{
结果:数据项
};
},
templateResult:函数(数据){
log('templateResult');
返回“”+data.text+“”;
},
}
});

但是,
templateResult
似乎没有被调用,因为没有向控制台输出任何内容。即使我将返回更改为“测试”,默认结果仍会显示。无论是否包含templateResult,代码都是一样的。

我将templateResult放在ajax范围内。修正如下:

$(".search").select2({
    minimumInputLength: 3,
    ajax: {
        url: url,
        dataType: 'json',
        delay: 250,
        processResults: function (data) {
            return {
                results: data.items
            };
        },
    },
    templateResult: function (data) {
        console.log('templateResult');
        return '<span><img src="//example.com/img.png" /> ' + data.text + '</span>';
    }
});
$(“.search”)。选择2({
最小输入长度:3,
阿贾克斯:{
url:url,
数据类型:“json”,
延误:250,
processResults:函数(数据){
返回{
结果:数据项
};
},
},
templateResult:函数(数据){
log('templateResult');
返回“”+data.text+“”;
}
});

检查您的
处理结果-结果:数据。项目
,我切换到
数据。结果

奇怪-这里似乎工作正常:。谢谢-这没有ajax调用,但它帮助我发现了问题。templateResult选项在ajax回调中。啊,是的!我自己也错过了。很高兴你能让它工作。如果你能用一种很好的格式详细阐述一下,那就更好了。