Play框架中的Jquery数据表 - $(“#example”)。dataTable不是函数

时间:2011-09-08 06:34:52

标签: jquery playframework datatables

我正在尝试在我的播放应用程序中实现JQuery数据表。

这是我的代码

    #{extends 'main.html' /}
    #{set title:'Customers List' /}
    <link rel="stylesheet" media="screen" href="@{'/public/stylesheets/demo_table.css'}">
    <link rel="stylesheet" media="screen" href="@{'/public/stylesheets/demo_page.css'}">
    #{set 'moreScripts'}
    <script src="@{'/public/javascripts/jquery-1.5.2.min.js'}" type="text/javascript" charset="${_response_encoding}"></script>
    <script src="@{'/public/javascripts/jquery.dataTables.js'}" type="text/javascript" charset="${_response_encoding}"></script>
    <script src="@{'/public/javascripts/jquery.js'}" type="text/javascript" charset="${_response_encoding}"></script>
    <script>
        $(document).ready( function() {
            oTable = $('#example').dataTable();
        });
    </script>
    #{/set}
    <div class="others" align="center">
                    <table width="100%" cellpadding="0" cellspacing="0" border="0" class="display" id="example">
                        <thead>
                        <tr>
                                <th>Header1</th>
                                <th>Header2</th>
                        </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td>Col1</td>
                                <td>Col2</td>
                            </tr>
                        </tbody>
                    </table>
    </div>

当我运行页面时,javascript会抛出错误

$("#example").dataTable is not a function

我检查了所有的javascript / css文件。所有文件都包括在内。 可能是错误。

2 个答案:

答案 0 :(得分:12)

您必须在脚本部分加载DataTables AFTER jQuery,并且只能包含一次jQuery。

尝试删除第二个(非缩小的)jQuery请求,看看你如何去。

答案 1 :(得分:2)

错误只有两个原因

  1. 您没有在datatable插件
  2. 之前添加jquery插件
  3. 您已包含多个时间jquery插件

    如果你还有问题而不是尝试从cdn使用jquery插件 链接是http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js 并删除所有其他jquery插件