在AJAX中解析JSON字符串

时间:2014-09-15 12:14:28

标签: javascript php jquery ajax json

在控制器中,我有使用JSON编码的数据库结果,我从控制器回显变量,并希望将其传递给ajax成功部分。我可以通过解析函数解析结果,我如何在ajax成功部分显示db结果???

CONTROLER

 <?php 
 $this->db->limit($l, $rpp);
 $row = $this->db->get('pages');
 echo json_encode($row);

ajax

$.ajax({
    type: "POST",
    url: "<?php echo site_url('search/ajax')?>",
    data: { 'rpp' : rpp , 'last' : last, 'pn' : pn},
    dataType: "text",
    success: function(msg){
      // var json = msg;
      var obj = JSON.parse(msg);
      ...
    }
});

我在这里遇到某种错误,以这种方式获取数据是否可行????

2 个答案:

答案 0 :(得分:2)

dataType: "text"更改为dataType: "json"并仅回显JSON字符串(否则会引发错误):

 <?php

 $array = ['name' => 'Jogn', 'age' => 20];
 echo json_encode($array);

答案 1 :(得分:0)

检查返回的json数据是否采用正确的json格式,并尝试dataType:&#34; json&#34;和jQuery.parseJSON(msg);在你的ajax请求中解析json。