Вы должны передать source
функцию, которая делает запрос AJAX вручную, а затем выполняет некоторую постобработку возвращенных данных:
source: function(request, response) {
$.ajax({
url: url,
data: request,
dataType: "json",
success: function(data) {
var processedData = $.map(data, function(item) {
return {
value: item._your_property, // Property you want to use for "value"
label: item._another_property // Property you want to use for "label"
}
});
response(processedData);
},
error: function() {
response([]);
}
});
}
В основном, используйте $.map
чтобы превратить полученный массив обратно в массив объектов, поддерживаемых виджетом автозаполнения.
Для рабочего примера посмотрите пример JSONP на демонстрационной странице jQueryUI.