2014-09-03 99 views
0

我有一个PHP文件,伸出手触摸一个mongo数据库并构建一堆表格标签。当我用php代码替换下面的脚本标记代码时,它工作正常并构建出表格。如何使用从PHP返回的数据构建HTML表格?

当我尝试从被调用页面获取php结果时,我设法将表格文本导入到数据变量中......如果我提醒它,我会看到从我的.php页面生成的所有表格标记和数据...但我不知道如何将这些代码嵌入到HTML中的第th标签之后...如果我在脚本中执行document.write(data),它似乎只用数据覆盖整个页面这是从.php页面生成的......它不会将其追加到第th行之后。提前感谢您的任何建议。

  <table class="table table-striped table-hover"> 

       <tr> 
        <th>Agency</th> 
        <th>POC</th> 
        <th>POC Phone</th> 
        <th>Address</th> 
       </tr>   

       <script> 
        var data_from_ajax; 
        $.get('build-agency-table.php', function(data) { 
         data_from_ajax = data; 
         alert(data); 
        }); 
       </script> 

      </table> 

,这是由PHP脚本

<tr><td>BACODA</td><td>Kristi Smith</td><td>211.444.2222</td> 
+0

我的想法正在围绕试图理解您的问题。你可能对JavaScript和PHP感到困惑吗? – 2014-09-03 01:29:38

+0

我不这么认为。我使用$不用彷徨叫出到PHP文件,并返回我的表行数据(这里是数据的一个例子:​​BACODA​​克里斯蒂·史密斯​​211.444.2222 ...等)我得到的数据或data_from_ajax变量包含我所有的表信息(tr,td标签和数据),我想要做的就是在数据变量的后面追加表格行之后的数据变量中的文本以填充表格的其余部分。 – user2943451 2014-09-03 01:44:21

回答

1

返回试试这个

 <table class="table table-striped table-hover"> 

      <tr> 
       <th>Agency</th> 
       <th>POC</th> 
       <th>POC Phone</th> 
       <th>Address</th> 
      </tr> 

      <tbody id="tablebody"></tbody> 

      <script> 
       var data_from_ajax; 
       $.get('build-agency-table.php', function(data) { 
        data_from_ajax = data; 
        $('#tablebody').html(data); 
        alert(data); 
       }); 
      </script> 

     </table> 
+0

哇这个先来,挑这个。尽管我仍然喜欢在桌子外放置脚本标签。 – Hendyanto 2014-09-03 01:55:05

+1

非常感谢,完美的作品。是的,Hendyanto ..现在我知道了真正发生的事情,我意识到脚本文件可以回到我的.js文件或其他地方进行清理。 – user2943451 2014-09-03 01:56:27

+0

我同意脚本标签应该出去。我以为我搬了它,但没有。谢谢 – Jacob 2014-09-03 02:05:35

2

我觉得剧本标签属于表外。 使用tbody thead将帮助您区分静态(标题)和动态(来自ajax)的内容。

<table> 
     <thead> 
     <tr> 
      <th>Agency</th> 
      <th>POC</th> 
      <th>POC Phone</th> 
      <th>Address</th> 
     </tr> 
     </thead> 
     <tbody id="to_fill"> 

     </tbody> 
</table> 


<script> 
     var data_from_ajax; 
     $.get('build-agency-table.php', function(data) { 
     data_from_ajax = data; 
     $("#to_fill").html(data_from_ajax); 
     }); 
</script> 
0

您需要将html内容添加到使用javascript的容器中。

<table> 
    <tr> 
     <th>...</th> 
     <th>...</th> 
     <th>...</th> 
    </tr> 
    <tr id="myRow"></tr> 
</table> 

<script>  
    $.get('build-agency-table.php', function(data) { 
     $("#myRow").html(data); //Add the html content into "myRow" 
    }); 
</script>