Когда я сделал это, я указал опцию source
для автозаполнения, чтобы она была функцией, вызываемой приложением ASPNET. Это позволило мне указать URL напрямую. Для вас это было бы так:
$("#City").autocomplete({
source: function(req, responseFn) {
addMessage("search on: '" + req.term + "'<br/>", true);
$.ajax({
url : ajaxUrlBase1 + "GetMatchedCities/" + req.term,
cache : false,
type : "GET", // http method
success : function(msg){
// ajax call has returned
var result = msg;
if (result !== null){
var a = [];
for(var i=0; i < result.length; i++) {
a.push({label: result[i].cityname, id: result[i].abbrev});
}
responseFn(a);
} else {
responseFn(null);
}
}
});
}
});
Конечно, то, что вы делаете внутри success
fn, будет зависеть от формы json, который вы возвращаете из своего действия.