jQuery UI autocomplete получает действительные результаты json с сервера, но не вставляет их в DOM / отображение в браузере.Когда я встраиваю результаты в страницу, автозаполнение работает должным образом.
Javascript:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/jquery-ui.min.js" type="text/javascript"></script>
$('#query').autocomplete({
source: '/ajax/abc',
/*source: ['alpha', 'beta', 'gamma'],*/
minLength: 2,
select: function(e,ui) {
$('#query').val( ui.item.value );
$('form#search').submit();
}
});
JSON-результат из / ajax / abc (обнаружен с помощью Firebug):
["alpha", "beta", "gamma"]
Сгенерированный источник из Firefox после ввода "gam" на вход
(сервер):
<ul style="z-index: 1; top: 0px; left: 0px; display: none;" aria-activedescendant="ui-active-menuitem" role="listbox" class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all"></ul>
(встроенные результаты):
<ul style="z-index: 1; top: 31px; left: 185px; display: block; width: 149px;" aria-activedescendant="ui-active-menuitem" role="listbox" class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all"><li role="menuitem" class="ui-menu-item"><a tabindex="-1" class="ui-corner-all">gamma</a></li></ul>