php - jQuery Tablesorter 不适用于使用 php 生成的表

标签 php jquery mysql tablesorter

这是一个与此类似的问题:Mysql PHP generated table: doesn't work with Tablesorter

但是,有一个细微的差别:我直接在同一文件中生成表,而不是外部文件,因此 .load 不是一个选项。

我的代码:

<html>
 <head>
  <title>Tablesorter testing page</title>

  <link rel="stylesheet" href="style.css" type="text/css"/>

  <script src="jquery.js" type="text/javascript"></script>
  <script src="jquery.tablesorter.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(document).ready(function() { 
        $("#races").tablesorter();
    }); 
  </script>
 </head>
<body>
 <?php
    $db = new mysqli("localhost", "user", "password", "database");

    $query = "SELECT name, date FROM races";

    $result = $db->query($query, MYSQLI_STORE_RESULT);

    $o = '<table id="races"><thead><tr><th>Name</th><th>Date</th></tr></thead><tbody>';

    while(list($name, $date) = $result->fetch_row()) {
        $o .= '<tr><td>'.$name.'</td><td>'.$date.'</td></tr>';
    }

    $o .= '</tbody></table>';

    echo $o;
?>
</body>
</html>

问题是表没有格式化,好像Tablesorter是在空表上调用的?如果我硬编码一个 html 表,Tablesorter 就可以正常工作。

那么,我该如何让它发挥作用呢?

编辑:下面是生成的 .html 代码

<html>
     <head>
      <title>Tablesorter testing page</title>

      <link rel="stylesheet" href="style.css" type="text/css"/>

      <script src="jquery.js" type="text/javascript"></script>
      <script src="jquery.tablesorter.js" type="text/javascript"></script>
      <script>
        $(document).ready(function() { 
            $("#races").tablesorter();
        }); 
      </script>
     </head>
    <body>
     <table id="races">
<thead><tr><th>Name</th><th>Date</th></tr></thead>
<tbody><tr><td>Race 1</td><td>2012-01-01</td></tr><tr><td>Race 2</td><td>2012-01-01</td></tr></tbody></table>
</body>
</html>

最佳答案

替换这一行:

<table id="races">

与:

<table id="races" class="tablesorter">

我也在使用这个 jquery 插件,并且遇到了这个问题,直到我将此 CSS 类添加到我的表中。您必须确保您的 CSS 文件包含 tablesorter CSS 类的 CSS 代码。

关于php - jQuery Tablesorter 不适用于使用 php 生成的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11774318/

相关文章:

php - 提高查询速度 Ionic/Laravel 发布请求

javascript - 更优雅/有效的方式来连续获取 6 个连续的前一个 DOM 元素?

MySQL 中的 Java 属性文件

mysql - KEY 关键字是什么意思?

php - 正确使用 PHP MYSQL 数组

php - 我的网站使用哪些 php 模块?

jquery - 隐藏下拉菜单箭头图标

php mysql 获取带有字符问题的名称

php - 在 Python 中使用 IMAPClient 获取电子邮件 - 需要将数据存储在列表中

javascript - jQuery 'fade in' 在页面加载时不在 css 中使用 'display:none'