我最近一直在努力使用 Jquery Select2 ( Select2 ),试图实现从 ASP MVC ActionResult 获取数据的 ajax 回调。
这是我的 HTML 代码:
<input type="hidden" id="e2" style="width: 500px;">
这是js代码:
<script>
$(document).ready(function(){
$("#e2").select2({
minimumInputLength: 1,
ajax:{
url: "http://localhost:1800/Test/GetCountries",
dataType:"jsonp",
data: function(term, page){
return {
query: term
};
},
results: function(data){
return {
results: data
};
}
}
});
});
GetCountries 函数非常简单,它只返回与搜索词匹配的国家。这是搜索“联合”一词时的示例:
[{"id":"AE","text":"United Arab Emirates"},{"id":"UK","text":"United Kingdom"},{"id":"US","text":"United States"}]
我尝试将格式从 application/json 更改为 text 来回没有成功。我想我在我的函数返回的 json 上遗漏了一些东西,但是三个小时后我仍然不知道这里可能出了什么问题。
当我在网络选项卡上查看 Chrome 调试器时,它似乎调用了该函数并且正在发送数据。但是,当我输入字母时,什么都没有显示,它只会永远显示“正在搜索...”文本。
如果有人遇到过同样的情况,请分享您的想法。提前致谢。