Di seguito è riportato il mio tentativo di far funzionare appendTo
con completamento automatico jQuery con origine AJAX.Comprensione e implementazione del completamento automatico jQuery con sorgente AJAX e appendice
Ho più domande, che si spera possano aiutare molti altri che stanno lottando con la comprensione del modo corretto di implementare completamento automatico e sorgente AJAX.
1) source: function(request, response) {...}
Cosa fa? Perché è necessario.
2) Quale formato restituisce i dati in function(data){ response($.map (data, function(obj) {
? Mi rendo conto che i dati sono in formato JSON, ma qual è il punto di .map
? È necessario farlo? Ci sono benefici?
3a) Quando si utilizza appendTo
e renderItem
, è necessario restituire i dati success
sopra menzionati?
3b) O o, in base ai dati di cui sopra, come utilizzare appendTo e renderItem per modificare la formattazione e la visualizzazione dei valori recuperati?
$(function() {
$(".find_group_ac").autocomplete({
minLength: 1,
source: function(request, response) {
$.ajax({
url: "welcome/search/",
data: { term: $(".find_group_ac").val()},
dataType: "json",
type: "POST",
success: function(data){ response($.map
(data, function(obj) {
return {
label: obj.name + ': ' + obj.description,
value: obj.name,
id: obj.name
};}));}
});
}
}).data("autocomplete")._renderItem = function(ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "<br>" + item.desc + "</a>")
.appendTo(ul);
};
});
Questo potrebbe sembrare un sacco di rispondere, ma sono sicuro che sarà prezioso per molti neofiti javascript e certamente io.
Grazie, questo è molto istruttivo. –
Grazie :) mi ha salvato la giornata! –
Grazie per questo snippet. Si noti che manca una virgola (,) dopo la descrizione: obj.description – Danilo