我试图将数据库中返回的值从PHP数组返回到JavaScript数组。 到目前为止,我所做的是将值作为字符串返回,我希望每个值都是一个数组 索引。
这是我的jQuery AJAX调用:
$.ajax({
type: 'GET',
url: "Profile_Control.php",
data:"ajaxRequest=yes&id="+document.getElementById("compid").value,
success:function(data)
{
document.getElementById("asd").innerHTML=data;
}
});
这是我到目前为止的PHP脚本,它返回的值就像字符串一样,我想要数组索引中的每个值。
$branches=Profile_Model::getCompanyBranches($_GET['id']);
while($row=mysql_fetch_array($branches))
{
echo $row[3];
}
现在我只回显从数据库返回的值的第3列,输出如下:
67.030867.020467.031167.020667.0357
我想要的结果应该是这样的。
arr[0]=67.0308
arr[1]=67.0204
arr[2]=67.0311
arr[3]=67.0206
arr[4]=67.0357
我还尝试使用json_encode($row[3]);
在JSON中对数据进行编码,但它会返回以下结果。
"67.0308""67.0204""67.0311""67.0206""67.0357"
答案 0 :(得分:2)
创建一个数组,其中包含您最终想要在JS数组中的元素,然后json_encode
该数组:
$rows = array();
while($row=mysql_fetch_array($branches)) {
$rows[] = $row[3];
}
echo json_encode($rows);
但是,data
将成为成功回调中的数组,因此您不能简单地将其分配给元素的innerHTML
属性。但由于这似乎是调试输出,只需将其替换为console.log(data);
。
答案 1 :(得分:1)
创建一个每个元素为$row[3]
的新数组,通过json_encode
发送新数组。
现在你只是对每个$row[3]
进行json_encoding。