1

我有一个小型应用程序,它通过 PHP 后端从数据库加载 HTML 内容。目前,jQuery 将 PHP 文件中的 html 数据加载到主页上的 DIV 中,每隔 5 秒左右发生一次setInterval() $('#div').html(html);. 所有格式都在 CSS 中完成,数据结构从 php 文件中回显。我还使用 jQuery 通过 PHP 将数据发布到数据库,因为这是一个小型聊天应用程序。我的问题是更快或更有效地提取这些数据的方法是什么,要么使用 json 并通过 jQuery.each()方法将每个元素解析为其结构,要么继续使用我当前.html()的方法加载数据并通过 PHP 回显完整的数据结构? 谢谢你的时间。

4

1 回答 1

2

我个人将结构回显到 php 中的 JSON 对象。然后在 javascript 中解析它并通过 .html() 将其放入容器中。

我认为这比替代方案要好得多,因为您在 php 中有很好的干净可编辑代码,只需使用 javascript 将其放在需要的地方。

在我的 php 中:

    $response['error'] = false; // if you get an error set this to true
    $response['html'] = ''; // set this wherever you like.
    alternately if you needed to break it up
    $response['html_A'] = '';
    $response['html_B'] = '';


>     in the end


    echo json_encode($response);

在javascript中

$.post(function(r){
  response = JSON.parse(r);
   if (response.error !== true){
     $('#someDiv').html(response.html);
   }
   else {
     alert (response.errorMessage);
   }
}

做一个 $.each 循环似乎很费力。特别是当您决定添加/修改一些由 php.ini 生成的输出时。

于 2013-03-19T16:04:57.100 回答