解析php中的json值并显示在表中

时间:2013-11-02 02:40:45

标签: php html json

这是我的HTML,

<html>
<head> 
<script src="js/jquery.js"></script>
</head>

<body> 
<input type="text" name="query" id="queryBox">
<button id="load_basic" value = "button">search</button><br/>

<div id="result"></div>
</body>

<script>

    $.ajaxSetup ({
        cache: false
    });
    var ajax_load = "<img src='images/ajax-loader.gif' alt='loading...' />";

    $("#load_basic").click(function(){
    var query = $("#queryBox").val();
    var loadUrl = "http://localhost:8983/solr/collection1/select?q=" + query +"&fl=title&wt=php&indent=true";
    $("#result").html(ajax_load).load(loadUrl);

    });

</script>

</html>

在给出查询时,结果div的值将是一个json,示例结果如下所示,

   {
   "responseHeader":{
      "status":0,
      "QTime":58,
      "params":{
         "fl":"title",
         "indent":"true",
         "q":"gizmodo",
         "_":"1383358368484",
         "wt":"json"
      }
   },
   "response":{
      "numFound":4,
      "start":0,
      "docs":[
         {
            "title":"AACS encryption key controversy"
         },
         {
            "title":"LOL"
         },
         {
            "title":"MythBusters"
         },
         {
            "title":"Anonymous (group)"
         }
      ]
   }
}

如何解析这个json并单独获取title中的值?

<?php
$query = "http://localhost:8983/solr/collection1/select?q=" .  $_GET['q'] ."&fl=title&wt=json&indent=true";
$response = file_get_contents($query);
echo $response;
?>

1 个答案:

答案 0 :(得分:0)

在JS中,要解析div中的JSON,你可以这样做

var myJSON=jQuery.parseJSON(jQuery('#result').text());
var title=myJSON.response.docs[0].title;
console.log(title);