首页 > 解决方案 > 如何从 Ajax 调用中获取正确的 HTML?

问题描述

我对返回整个 html 表的函数进行了 Ajax 调用。

     $.ajax({
    url: "/admin/project/getProjectTrackedTimes",
    headers: {
      'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    },
    type: "POST",
    dataType: "html",
    data: {
      project_id : project,
      offset : offset,
      step : step,
    },
    success: function(data) {
      $('.c-admin-timetrack-table').html(data);
    },
    error: function(data) {
    }
  })
}

然后在 php 函数中,我返回以下内容:

return json_encode($block);

现在,当我在页面中更改某些内容时:

 $('.c-admin-timetrack-table').html(data);

这是结果: http: //prntscr.com/l1rcer

输出不是良好的 html 格式。

有人可以帮我吗?谢谢!

编辑:我真是个笨蛋。复制了其他代码并为此功能更改了一些内容。不过,没有删除 json_encode,愚蠢。谢谢你的敏锐。

标签: javascriptjqueryhtmlajaxformat

解决方案


尝试更换这部分

[前]

success: function(data) {
    $('.c-admin-timetrack-table').html(data);
},

[后]

success: function(data) {
    data = JSON.parse(data);
    $('.c-admin-timetrack-table').html(data);
},

接收数据的证据是 json。


推荐阅读