使用jQuery从数据库填充下拉列表

时间:2017-02-02 09:31:07

标签: javascript php jquery mysql ajax

我想使用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>

调试控制台:

enter image description here

2 个答案:

答案 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);