繁体   English   中英

如何将数组从php传递到ajax成功函数?

[英]How to pass array from php to ajax success function?

我正在开发一个Web应用程序。 我正在从数据库中检索数据,并使用$row = mysqli_fetch_array()将其存储到数组中。 问题是,该数组应该使用echo json_encode($array)转到ajax但是我不知道如何从ajax成功函数接收它,顺便说一句,我正在使用jQuery.parseJSON() 之后,我将把该数组的值附加到<option>元素。

get_AssetModel.php:

$sqlGetAssetModels = "select * from tblbrands where brand_name like '$phpGetAssetModels'";
//$array = array();
$models = array();

if ($result = mysqli_query($cn, $sqlGetAssetModels)) {
    if (mysqli_num_rows($result) > 0) {
        $row = mysqli_fetch_array($result);
        $models[] = $row[3];
    }
} else {

}

echo json_encode($models);

谁会收到数组的javascript文件:

$.ajax({
        url: "inventory/get_AssetModel.php",
        type: "POST",
        data: chAssBrand,
        success: function(data, textStatus, jqXHR){
            var data = jQuery.parseJSON(data);
            var node = document.createElement("option");
            var textnode = document.createTextNode(data.0);
            node.appendChild(textnode);
            document.getElementById("txtInvModel").appendChild(node);
        },
        error: function(jqXHR, textStatus, errorThrown){
            swal("Error!", textStatus, "error");
        }
    });

还是其他方式?

我认为您的data可能类似于以下示例:

 var data = ["Anthony", "Jhake", "Ravelo", "Antigro"]; data.forEach(function(value, index) { var option = document.createElement("option"); option.text = value; option.value = index; var select = document.getElementById("txtInvModel"); select.appendChild(option); }); 
 <select name="txtInvModel" id="txtInvModel"> <option value="">Select one</option> </select> 

希望这对您有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM