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"}]
È stato utile?

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
scroll top