jQuery select2 AJAX ne fonctionne pas
-
21-12-2019 - |
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"}]
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
};
}