如何在javascript中使用json数组

时间:2013-01-19 11:29:40

标签: php javascript html ajax json

  

可能重复:
  I have a nested data structure / JSON, how can I access a specific value?

我有一个javascript,它对一个php文件执行XMLHttp请求,后者又查询一个mysql表并返回一个JSON数组......但不知怎的,我无法访问该数组的各个元素。 这是javascript:

<script type="text/javascript">
function show(){
    if(window.XMLHttpRequest){
        xmlhttp=new XMLHttpRequest();
    }
    xmlhttp.onreadystatechange= function () {
        if(xmlhttp.readyState==4 && xmlhttp.status==200){

            var response= new Array();
            response=xmlhttp.response;
            alert(response);
        }
    }
    xmlhttp.open('GET','test.php', true);
    xmlhttp.send();

}
</script>

这是php脚本:

mysql_select_db('testpolaroid') or die ('Unable to select database!');
$query = 'SELECT * FROM images';
$result = mysql_query($query) or die ('Error in query: $query. ' . mysql_error());
if(mysql_num_rows($result) > 0)
{
    $row = mysql_fetch_assoc($result);
    echo json_encode($json);
}

我得到的回应是:

 {"imageid":"11","location":"11.jpg"}

1 个答案:

答案 0 :(得分:3)

您需要先使用JSON.parse解析JSON,代码如下:

var response = JSON.parse(xmlhttp.responseText);
var imageid = response["imageid"];