代码之家  ›  专栏  ›  技术社区  ›  Iacopo

在AJAX调用中同时返回JSON和HTML

  •  2
  • Iacopo  · 技术社区  · 16 年前

    典型的用法是显示复杂项的列表(通常呈现为 <li>

    用户的操作和详细信息通过异步调用发送到服务器:结果到达后,我必须更新HTML和javascript数组。

    (基于jQuery构建)并且似乎没有太大的性能问题。

    问题是:我是否遗漏了一些微妙的(或者很明显的)东西,使得这个解决方案变得糟糕? 有没有更简单更好的解决方案?

    顺便说一下,服务器运行PHP。

    2 回复  |  直到 16 年前
        1
  •  7
  •   TRiG    13 年前

    所以假设您有两个变量:一个HTML字符串( $html_string )以及以JSON格式发送的PHP信息数组( $array_of_info

    $a = array(
      'html' => $html_string,
      'json' => $array_of_info
    );
    header('Content-Type: application/json');
    echo json_encode($a);
    

    它的输出比简单地连接HTML和JSON字符串的输出稍长,但是客户端的解析应该更容易。而且可能更快。而且,正如评论中所指出的,不太容易出错。

        2
  •  7
  •   starskythehutch Bennett Keller    16 年前