Привет всем Я видел все вопросы, связанные с этой проблемой, но не смог найти решение. Я работаю с JQuery UI автозаполнения. Мой сценарий такой,
У меня есть флажок. Когда флажок установлен, на сервер отправляется запрос ajax, который извлекает некоторую информацию из базы данных и возвращает данные кодирования json. В случае успеха я вызываю автозаполнение jquery, а в источнике я предоставляю данные, возвращенные моим ajax-запросом. Когда я начинаю что-то писать в своем текстовом поле (я вижу это на вкладке консоли firebug), отправляется запрос get
со всеми моими параметрами, которые возвращаются из запроса ajax, например
http://localhost/project/module/controller/index/%5B%22Mobile%22,%22Watch%22,%22Lamps%22,%22Harry%20Potter%22,%22Suitcase%22,%22Halloween%22,%22Xmas%22,%22Multiple%22,%22oil%22,%22Empty%20Keywords%22,%22iphone%20theme%22,%22Edit%20theme%22,%22Final%20Theme%22%5D?term=mo
и ничего не происходит. Там нет опций, показанных как автозаполнение. Мой код выглядит следующим образом
<input type="checkbox" name="prebuilt-Themes" id="prebuilt-Themes" onclick="get_all_themes();">
Текстовое поле
<input type="text" id="themes" style="display: none;" class="ui-autocomplete-input">
И функция, которая обрабатывает ajax-запрос
function get_all_themes()
{
if($("#prebuilt-Themes").is(':checked'))
{
$('#themes').show();
$.ajax({
type:'POST',
//data:({string:'abc'}),
url: "<?= $this->baseUrl(); ?>/module/controller/getallthemes",
success:function(data)
{
$(function() {
$( "#themes" ).autocomplete({
source: data
});
});
}
});
}
}
Данные, которые я получаю из моего Ajax-запроса, выглядят так
["Mobile","Watch","Lamps","Harry Potter","Suitcase","Halloween","Xmas","Multiple","oil","Empty Keywords","iphone theme","Edit theme","Final Theme"]
Кто-нибудь может подсказать, что я делаю не так?