m0_62370567 2022-04-01 14:49 采纳率: 70%
浏览 149
已结题

在SSM项目中以JSON格式将数据返回给前端,前端该怎么接收和渲染

问题相关代码,请勿粘贴截图

controller

 @RequestMapping("/findByUserId")
    @ResponseBody
    public String findByUserId(int id) throws JsonProcessingException {
        ObjectMapper mapper = new ObjectMapper();
        List<Complain> list = new ArrayList<Complain>();
        list = complainService.findByUserId(id);
        return mapper.writeValueAsString(list);
    }

前端

<script>
        $(function (){
            $("#btn").click(function (){
                $.post("${pageContext.request.contextPath}/complain/findByUserId?id=${sessionScope.user.id}",function (data){
                    var str = "";
                    for (let i =0;i<data.length;i++){
                        str+="<tr>"+
                            "<td>"+data[i].id+"</td>"+
                            "<td>"+data[i].complain_content+"</td>"+
                            "<td>"+data[i].creat_time+"</td>"+
                            // "<td>"+data[i].user.name+"</td>"+
                            // "<td>"+data[i].user.phone+"</td>"+
                            "<td>"+data[i].state+"</td>"+
                            "<td>"+data[i].admin+"</td>"+
                            "<td>"+data[i].reply_time+"</td>"+
                            "<td><a href=/complain/deleteById?id=data[i].id>删除</a></td>"+
                            "</tr>"
                    }
                    $("#show_tbody").html(str)
                })
            })
        })
    </script>

运行结果及报错内容

这是查询到的数据

img

这是运行结果

img

我想要达到的结果

将需要的信息从两张表查询后的结果中取出并展示,望解答,谢谢

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2022-04-01 15:19
    关注

    需要将json字符串转为数组。

    <script>
            $(function (){
                $("#btn").click(function (){
                    $.post("${pageContext.request.contextPath}/complain/findByUserId?id=${sessionScope.user.id}",function (data){
                        var str = "";
                        let arr=JSON.parse(data);
                        for (let i =0;i<arr.length;i++){
                            str+="<tr>"+
                                "<td>"+arr[i].id+"</td>"+
                                "<td>"+arr[i].complain_content+"</td>"+
                                "<td>"+arr[i].creat_time+"</td>"+
                                // "<td>"+arr[i].user.name+"</td>"+
                                // "<td>"+arr[i].user.phone+"</td>"+
                                "<td>"+arr[i].state+"</td>"+
                                "<td>"+arr[i].admin+"</td>"+
                                "<td>"+arr[i].reply_time+"</td>"+
                                "<td><a href=/complain/deleteById?id=arr[i].id>删除</a></td>"+
                                "</tr>"
                        }
                        $("#show_tbody").html(str)
                    })
                })
            })
        </script>
     
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月12日
  • 已采纳回答 4月4日
  • 创建了问题 4月1日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵