/ / Remplir la liste déroulante de la base de données en utilisant jQuery - javascript, php, jquery, mysql, ajax

Remplir la liste déroulante à partir de la base de données en utilisant jQuery - javascript, php, jquery, mysql, ajax

Je veux remplir la liste déroulante de la base de données à l'aide de jQuery. Mais quand j'ai essayé, je reçois une réponse vide. voir ci-dessous le code je n'ai pas vu d'erreur.

Code PHP pour obtenir des données:

if ($dat=="driver") {
$q = "select * from drivers";
$sql = mysql_query($q);
$data = array();
while($row = mysql_fetch_array($sql, true)){
$data[] = $row;
};
echo json_encode($data);
}

Code jQuery:

$.getJSON("get-data.php?dat=driver",function(data){
$.each(data,function(key,val) {
$("#night_Shift_text").append(
$("<option></option>").val(value.id).html(value.id)
);
});
});

HTML:

<select id="night_Shift_text"><option></option></select>

Console de débogage:

entrer la description de l'image ici

Réponses:

0 pour la réponse № 1

Utilisez une chaîne pour stocker votre option, puis ajoutez-la à la balise select. Ensuite, s'il vous plaît vérifier que les données sont là dans le val.

$.getJSON("get-data.php?dat=driver",function(data){
var stringToAppend = "";
$.each(data,function(key,val) {

stringToAppend += "<option value="" + val.id + "">" + val.id + "</option>";

});

$("#night_Shift_text").html(stringToAppend);
});

0 pour la réponse № 2

Vous utilisez une mauvaise variable value. Vous devez utiliser val

        $("<option></option>").val(val.id).html(val.id);