在codeigniter中jQuery POST后返回json编码响应的问题

在codeigniter中jQuery POST后返回json编码响应的问题

问题描述:

我在使用jQuery post之后接收响应时出现问题。我创建的脚本正确地发布数据并正确插入数据库,但是当我尝试并返回一个json编码的响应时,没有收到数据。在codeigniter中jQuery POST后返回json编码响应的问题

这里是我使用的代码:

jQuery.ajax({ 
    success: function(data) { 
      if (data) 
      { 
      alert("DATA RECEIVED"); 
      } 
      }, 
      data: {action: 'create', section: JSON.stringify(values)}, 
      type: 'POST', 
      dataType: 'json', 
      url: "fields/sections/create" 
     }); 

在我的控制器我有

$section = json_decode($this->input->post('section')); 


      $this->load->model('mdl_fields'); 


      $section_id = $this->mdl_fields->create_section($section->name, $section->row); 

      if($section_id) { 

       $data=array(
"section" => $section_id, 
"confirm" => 'Section Has Been Created Successfully' 
); 
return json_encode($data); 
} 

我已签有一个$ SECTION_ID,我已经印刷json_encode($数据)进行检查它是正确的,它是什么,但我还没有收到答复。

我一直在撕裂我的头发,试图解决这个过去几个小时,所以任何帮助将不胜感激。

感谢

+0

你可以看看萤火虫在响应和复制它在这里? – david 2011-03-24 01:03:49

+0

@david - 在萤火虫中没有回应是问题所在。如果我使用print_r(json_encode($ data);'而不是'return json_encode($ data);'显示以下内容: '{“section”:50,“confirm”:“部分已成功创建” } – 2011-03-24 01:09:18

也许你只需要简单地制造类似

echo json_encode($data); 

会产生JSON格式兼容$数据结构的纯输出。看看json_encode它返回字符串,并不会产生任何输出!

尝试:echo json_encode($data);

+0

杰森是谁? – 2013-07-10 13:54:54

+0

杰森是我的表弟。JSON是我的朋友。 – 2013-07-10 20:05:42