Domanda

Sto usando il plugin Jquery Select2 e sto cercando di ottenere l'Ajax per lavorare con i miei dati ext che ovviamente non funziona e mi sto solo chiedendo se qualcuno possa sottolineare ciò che sto sbagliando o manca qualcosa? .

Nota Questo è solo per selezionare V3.5.2

My JS:

$('#cliselect').select2({
    ajax: {
        dataType: "json",
        url: "clientprojectpopulate.php",
        results: function (data) {
            return {results: data};
        }
    }
});
.

HTML:

<select id="cliselect" name="cliselect" style="width: 100%;" /></select>
.

I miei ritorni JSON (che credo è valido):

[{"id":"62","text":"Alberta Innovates Health Solutions"},{"id":"4","text":"Alterna Savins & Credit Union"},{"id":"63","text":"BC Patient Safety & Quality Council"}]
.

È stato utile?

Soluzione 2

ha capito perché stavo usando <select>

Deve essere un <input> per i dati Ajax da caricare ...

<input type="hidden" id="cliselect" name="cliselect" style="width: 100%;" />
.

Altri suggerimenti

The Select2 Il controllo viene aggiornato alla versione 4.0.Ora i campi di input non funzionano più e dovrebbe esserci un elemento select.

I risultati sono stati modificati in

processResults: function (data) {
    return {
      results: data
    };  
}
.

All'interno della funzione processResults puoi usarle come questo:

processResults: function (data) {
    var results = [];
    $.each(data, function (index, account) {
        results.push({
            id: account.AccountID,
            text: account.AccountName
        });
    });

    return {
        results: results
    };
}
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top