我想使用jQuery从数据库填充下拉列表。但是,当我尝试时,我得到了空洞的回应。看下面的代码我没有看到任何错误。
获取数据的PHP代码:
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);
}
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>
调试控制台:
答案 0 :(得分:0)
使用字符串存储您的选项,然后将其附加到选择标记。然后,请检查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);
});
答案 1 :(得分:0)
您使用的是错误的变量value
。您需要使用val
$("<option></option>").val(val.id).html(val.id);