Risultati non definiti in jQuery completamento automatico
-
01-10-2019 - |
Domanda
Così ho le ultime versioni di jQuery UI e in esecuzione. Sto usando l'invocazione base di completamento automatico e il ritorno JSON valido (convalidato tramite JSONLint).
$("input#cust_id").autocomplete({
source: yoda.app.base + "/assets/cfc/util/autocomplete.cfc?method=cust",
minLength: 2,
select: function(event, ui) {
log(ui.item ? ("Selected: " + ui.item.value + " aka " + ui.item.id) : "Nothing selected, input was " + this.value);
}
});
Sia il valore e etichetta elementi dell'array restituito mostrate nell'elenco indefinita. Posso guardare i risultati restituiti tramite Firebug e JSON è corretto anche lì. Inoltre, mentre la lista dice soltanto "indefinito" si fa dire che lo stesso numero di volte record restituiti in JSON.
[{"VALUE":"custid1","LABEL":"My Customer Name 1"},{"VALUE":"custname2","LABEL":"My customer name 2"}]
Soluzione
Il tuo JSON ha bisogno di guardare in questo modo:
[{value:"custid1",label:"My Customer Name 1"},{value:"custname2",label:"My customer name 2"}]
come chiavi sono case sensitive:
var obj = {"hello" : "foo"};
alert(obj.HELLO); // undefined
alert(obj.hello); // foo
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow