Question

J'utilise le plugin jQuery select2 et j'essaie de faire fonctionner AJAX avec mes données ext, ce qui ne fonctionne évidemment pas et je me demande simplement si quelqu'un peut signaler ce que je fais de mal ou ce que je manque ?

NOTE Ceci est uniquement pour sélectionner la version 3.5.2

mon 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>

mon JSON renvoie (que je crois valide) :

[{"id":"62","text":"Alberta Innovates Health Solutions"},{"id":"4","text":"Alterna Savins & Credit Union"},{"id":"63","text":"BC Patient Safety & Quality Council"}]
Était-ce utile?

La solution 2

J'ai compris que c'était parce que j'utilisais <select>

Ce doit être un <input> pour que les données ajax se chargent...

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

Autres conseils

Le Sélectionnez2 Le contrôle est mis à jour vers la version 4.0.Maintenant, les champs de saisie ne fonctionnent plus et il devrait y avoir select élément.

Les résultats ont été modifiés en

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

À l'intérieur de processResults fonction, vous pouvez les utiliser comme ceci :

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

    return {
        results: results
    };
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top