【问题标题】:Using jQuery variables to store HTML/PHP tags使用 jQuery 变量存储 HTML/PHP 标签
【发布时间】:2016-04-08 21:02:42
【问题描述】:

我主要使用 jQuery 制作网站,并使用 PHP 与本地数据库进行通信。

基本上这是我网页的骨架(HTML/PHP):

<html>
  <head>
    <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
    <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
    <script type = "text/javascript" src = "script.js"></script>
</head>

  <body>
    <div id="content">
    </div>
  </body>
</html>

并为 jQuery 使用以下代码:

$(document).ready(function()
{
  
  var tagsQuery = "<? include 'connection.php'; $sql = 'SELECT dateofsale, eid, cid, amount FROM Sales'; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) > 0) { echo '<table><tr><th>Fecha</th><th>Vendedor</th><th>Cliente</th><th>Monto</th></tr>'; while($row = mysqli_fetch_assoc($result)) { echo '<tr><td>' . $row['dateofsale'] . '</td><td>' . $row['eid'] . '</td><td>' . $row['cid'] . '</td><td>' . $row['amount'] . '</td></tr>';} echo '</table>';}else {echo '0 results';}?>";
  
  $('#content').append(tagsQuery);

});

总而言之,我将 HTML/PHP 标记存储在 jQuery 中的一个变量中,并将此标记附加到内容 div。它在第一次加载页面时起作用,但在我单击其他按钮以显示相同的数据时不起作用(例如,如果我导航到运行此代码的页面,它不能完全工作......它只是部分工作。

你能帮忙吗?如果我不够清楚,请告诉我。谢谢!!

PS:conntection.php 只连接数据库。

【问题讨论】:

  • 您无法在客户端系统上运行 php 代码。您需要将 php 文件保存在服务器上,并考虑通过 jquery 运行 AJAX 请求,并使用您所需的数据来查询数据库。
  • 不要那样做 php 代码。没有充分的理由将所有代码放在var tagsQuery 内的一行中。只需执行您的 php 代码,然后在 var tagsQuery = ... 中回显最终代码
  • 在 jQuery 中使用 PHP 代码并特别包括文件和所有 insdie javascript/jQuery.... 您可以使用 AJAX 获得相同的响应并将该响应附加到特定的 div ....

标签: php jquery html tags append


【解决方案1】:

既然你是在页面加载的时候添加这段代码的,为什么不把这段代码放在php标签中呢? Javascript 仅用于客户端脚本。您无法从 Web 浏览器更改服务器代码。如果您愿意,您可以轻松地将该代码放入 php 标记中

<?php your php code here ?>

这样你就可以完成你即将完成的任务

【讨论】:

  • 在 jQuery 中使用 PHP 代码并特别包括文件和所有 insdie javascript/jQuery.... 您可以使用 AJAX 获得相同的响应并将该响应附加到特定的 div ....首先检查他们在那里编写代码的方式....这不是回答的好方法,您可以在那里发表评论....
  • 不,你可以在content div里面写php代码。不在脚本部分
  • 看看我提到的是“在 jQuery 中使用 PHP 代码,特别是包括文件和所有 insdie javascript/jQuery....”
【解决方案2】:

PHP 必须在服务器上进行处理,而当您在浏览器中运行 jQuery 时,服务器已不在图中。您最好的选择可能是将您的“tagsQuery”代码放入 PHP 脚本并使用AJAX,API 样式调用它:

$(document).ready(function(){
    $.ajax('http://example.com/new_php_script.php')
        .done(function(data){
            // "data" is the resulting output of the PHP script
            $('#content').append(data);
        });
});

【讨论】:

    【解决方案3】:

    如果你想将你的设计附加到以前的 div 中,你也可以这样做

    $(document).ready(function()
        {
         var html = '';
         html += '<div class="item col-xs-12 col-lg-6">';
         html += '<div class="thumbnail">';
         html += '<div class="caption">';
         html += '<h4 class="group inner list-group-item-heading">';
         html += '<b>'+data.subject+'</b></h4>';
         html += '<h5><b>'+data.projectname+'</b></h5><br />';
         $('#content').append(html);
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-16
      • 2010-12-07
      • 1970-01-01
      • 1970-01-01
      • 2013-09-01
      • 1970-01-01
      相关资源
      最近更新 更多