Thinkphp5.1框架下,对返回到前台json数据如何在前台显示出来
问题描述
留言板的评论功能,想通过调取数据的评论内容,显示在前台。
但是无效,请给各位指点一下应该怎么写。
这是前台的jq
<button class="look" id="{$i}" type="button" value="">展示评论</button>
<div class="show" id="{$vo.id}">
</div>
$(".look").click(function() {
var x = $(this).attr('id');
var x = x - 1;
$(".show:eq(" + x + ")").toggle();
var ids = $(".show:eq(" + x + ")").attr("id"); //文章id
$.ajax({
type: "post",
url: "http://liuyanban.cn/public/index.php/index/index/huifu",
data: {
'id': ids,
},
dataType: "json",
complete: function(data) {
var d = eval("(" + data.responseText + ")");
var xs = d.pinglunneirong;
alert(xs);
}
})
});
这是tp内的代码
public function huifu()
{
//查看评论回复
$text_id = Request::post('id');
$respl = Db::table('pinglun')->where('text_id', $text_id)->select();
if(empty($respl))
{
return json($respl);
}else{
return json($respl);
}
}
你期待的结果是什么?实际看到的错误信息又是什么?
我本来想的是,点击button 先获取到文章的id然后去查pinglun这个数据表,然后把查到的内容返回 用complete:function 获取到传过来的内容。但是每次 点击按钮后 alert 都是undefined
在NetWork里,出现alert时,无内容。点击确定后 内容如下
是我想要的数据,请问怎么把json给取出来。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我看你huifu接口返回的数据结构是数组,
你将 Db::table('pinglun')->where('text_id', $text_id)->select();
改为 Db::table('pinglun')->where('text_id', $text_id)->find();
就可以,或者 return json($respl[0]);
如果是多条数据的话
就在jq里改
var jsonarray= $.parseJSON(str);
$.each(jsonarray, function (i, n)
{
}
var d = eval("(" + data.responseText + ")");
d 获取的是 object ,需要循环去取.
$.each(d,function (m,n) {
})