IT序号网

jquery-select2之加载失败错误

mq0036 2024年10月25日 编程语言 16 0

当使用 ajax 在 select2 框中搜索内容时,我收到 Loading failed 错误。我的代码如下:

$("#drugSearch").select2({ 
    placeholder: "Search for a drug by drug id or name", 
    minimumInputLength: 3, 
    ajax: { 
        url: "@Url.Action("SearchDrug", "Drug")", 
        dataType: 'jsonp', 
        quietMillis: 100, 
        data: function (term, page) { 
            return { 
                query: term 
            }; 
        }, 
        results: function (data, page) { 
            debugger; 
            return { 
                results: data.drugs 
            }; 
        } 
    }, 
    formatResult: drugResult, 
    formatSelection: drugSelection, 
    escapeMarkup: function (m) { return m; } 
}); 
 
function drugResult(drug) { 
    debugger; 
    return drug.Name + " (" + drug.DrugBankRef + ")"; 
} 
 
function drugSelection(drug) { 
    debugger; 
    return drug.Name + " (" + drug.DrugBankRef + ")"; 
} 

断点也没有碰到上面的 debugger;

我的 JSON 返回为:

{ drugs: {[...]} } 

它还有属性 Name 和 DrugBankRef,我已确认搜索后从 URL 返回了一个有效的 JSON。

我在这里做错了什么?您还需要跟踪问题吗?

请您参考如下方法:

我使用的是 JSONP 而不是 JSON,将数据类型更改为 JSON 解决了这个问题。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!