Estoy usando el Autocompletar de jQuery UI para proporcionar sugerencias desde un origen remoto para un cuadro de entrada de búsqueda. Tengo el ejemplo de "origen de datos remoto" funcionando. Por ejemplo, esto funciona:jQuery UI Autocompletar con categorías
$("#search").autocomplete({
source: "search_basic.php",
minLength: 2
});
Sin embargo, me gustaría utilizar el "Categories" ejemplo para ordenar los suggesions por categoría. El ejemplo de la página jQuery UI, con un juego en línea de los datos funciona bien:
<script>
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
$(function() {
var data = [
{ label: "anders", category: "" },
{ label: "andreas", category: "" },
{ label: "antal", category: "" },
{ label: "annhhx10", category: "Products" },
{ label: "annk K12", category: "Products" },
{ label: "annttop C13", category: "Products" },
{ label: "anders andersson", category: "People" },
{ label: "andreas andersson", category: "People" },
{ label: "andreas johnson", category: "People" }
];
$("#search").catcomplete({
delay: 0,
source: data
});
});
</script>
Sin embargo, cuando intento de obtener los datos de mi archivo remoto
source: 'search.php'
no sugiere nada . Aquí está el código con el search.php:
<script>
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
$(function() {
$("#search").catcomplete({
source: 'search.php'
});
});
</script>
Los datos que search.php está volviendo tiene el formato correcto:
[
{ label: "annhhx10", category: "Products" },
{ label: "annttop", category: "Products" },
{ label: "anders", category: "People" },
{ label: "andreas", category: "People" }
]
Cualquier ayuda sería muy apreciada!
Gracias, Greg
Tengo el mismo problema. ¿Cómo lo resolvió? –