我正在尝试将数据库中的返回值从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"
发布于 2012-05-27 01:11:09
使用JS数组中最终需要的元素创建一个数组,然后对该数组执行json_encode
操作:
$rows = array();
while($row=mysql_fetch_array($branches)) {
$rows[] = $row[3];
}
echo json_encode($rows);
但是,data
将是成功回调中的一个数组,因此您不能简单地将其分配给元素的innerHTML
属性。但由于这似乎是调试输出,因此只需将其替换为console.log(data);
即可。
发布于 2012-05-27 01:12:16
创建一个新数组,每个元素都是$row[3]
,通过json_encode
发送新数组。
现在,您只需分别对每个$row[3]
执行json_encoding操作。
https://stackoverflow.com/questions/10768253
复制相似问题