如何使用json和ajax传递HTML

时间:2016-09-01 11:17:36

标签: php json ajax

我正在尝试使用JSON Encode函数和Ajax显示数据库的输出。但是,我越来越难以传递html元素“”和php“eg”。显示来自服务器的数据的变量。我希望使用json和ajax request显示输出。谢谢。

这是我的代码

[
 {
  lookups: [], 
  rows: [{data: {a: 1, b: 2}}, {data: {a: 3, b: 4}}], 
  title: "Table 1", 
  columns: [{name: "a"}, {name: "b"}]
 },
 {
  lookups: [],
  rows: [{data: {c: 5, d: 6}}, {data: {c: 7, d: 8}}],
  title: "Table 2",
  columns: [{name: "c"}, {name: "d"}]
 }
]

2 个答案:

答案 0 :(得分:2)

您可以使用dataType : 'html',而不需要json编码

//js
  function mpo() 
 {
     $.ajax({
         url: "main.php",
         cache: false,
         dataType : 'html'
         success: function(html){
             $("#show_div").html(html);
         }
     });
 }

//php

$bu = "<div class='main' style='margin-left:" .($level*60). "px'>";     
$bu = "<div class='main_one'>";
$bu = "<div class='main_User'>" .($same[2]) . "</div>";
$bu = "<div class='main_Msg'>" .($same[3]) . "</div>";
$bu = "<div class='main_Date'>" . ($same[4]) . "</div>";

echo $json;die;

答案 1 :(得分:0)

你遗漏了两件事:

  1. 你(可能......)需要解析json。
  2. 您需要从已解析的对象中获取正确的元素。
  3. 要让jQuery自动解析json,可以设置dataType:

     $.ajax({
         url: "main.php",
         dataType: 'json',
         ^^^^^^^^^^^^^^^^ set the data type of the returned data
         cache: false,
         success: function(html){
             $("#show_div").html(html.bu);
                                 ^^^^^^^ get the correct element
         }
     });