我有一个文本框的jQuery AutoComplete。初始化AutoComplete的代码是:
$("#SearchBox1").autocomplete({
autoFocus: false,
source: "Home/AutoComplete",
select: function (event, ui) {
alert(ui.item.label);
}
当网址不包含路径时,jQuery自动填充功能正常,但当网址包含localhost/home/GoToPage/?page=2
之类的内容时,则自动完成会尝试使用/home/GoToPage/Home/AutoComplete
。此时,AutoComplete完全被破坏,因为它使用了错误的路径。
有没有什么好方法可以解决这个问题?
答案 0 :(得分:0)
一种可能的解决方案是基于MadRabbit的评论,以及http://net.tutsplus.com/tutorials/javascript-ajax/how-to-use-the-jquery-ui-autocomplete-widget/上的Dan Wellman jQueryUI自动完成教程
$("#SearchBox1").autocomplete({
autoFocus: false,
source: function (request, callback) {
//pass request to server
$.getJSON("Home/AutoComplete?term=" + request.term, request, function (responseData) {
//create array for response objects
var suggestions = [];
//process response
$.each(responseData, function (i, val) {
suggestions.push(val);
});
//pass array to callback
callback(suggestions);
});
},
select: function (event, ui) {
$('#SearchBox1').val(ui.item.label);
}
});