【问题标题】:Sorting a database js generated table对数据库js生成的表进行排序
【发布时间】:2017-01-25 14:42:22
【问题描述】:

我想使用 ejs 和 nodes.js 创建一个显示 db 信息的表。

<table class="table table-striped table-hover" id="loaded-table">
    <thead>
        <tr>
            <th>First</th>
            <th>Second</th>
            <th>Third</th>
            <th>Fourth</th>
            <th>Fifth</th>
        </tr>
    </thead>
    <tbody>
    <% for(var i=0; i < data.length; i++) { %>
        <tr>
            <td> <%= data[i].prsnl_firstName %> </td>
            <td> <%= data[i].prsnl_lastName %> </td>
            <td> <%= data[i].prsnl_city %> </td>
            <td> <%= data[i].prsnl_email %> </td>
            <td> <%= data[i].prsnl_age %> </td>
        </tr>
    <% } %>
    </tbody>
</table>

但我也希望它是可排序的。就像在维基百科中一样,您单击th 之一,表格按该列排序。 问题是,尝试使用 jquery 插件不起作用,因为在执行代码时该表实际上不存在。 有没有办法这样做?

【问题讨论】:

    标签: jquery node.js ejs


    【解决方案1】:

    好的,您可以使用您的JQuery plugin(例如http://tablesorter.com/docs/),但是您必须确保在创建表后执行可排序的行为,您必须使用场景:

    1) 表格是在页面渲染时创建的,在这种情况下,您需要使用document on ready 运行

    $(document).ready(function(){ 
           $("#myTable").tablesorter(); 
    });
    

    2) 如果您的表是在某个触发器之后创建的,则只需在触发器之后运行$("#myTable").tablesorter(); 或等效项。

    【讨论】:

    • 很抱歉,有些东西不工作。当我使用普通表执行此操作时,它可以工作,但对于生成的表,它会显示表但不执行任何操作
    猜你喜欢
    • 1970-01-01
    • 2020-01-03
    • 2013-11-03
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多