我正在尝试在我的播放应用程序中实现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文件。所有文件都包括在内。 可能是错误。
答案 0 :(得分:12)
您必须在脚本部分加载DataTables AFTER jQuery,并且只能包含一次jQuery。
尝试删除第二个(非缩小的)jQuery请求,看看你如何去。
答案 1 :(得分:2)
错误只有两个原因
您已包含多个时间jquery插件
如果你还有问题而不是尝试从cdn使用jquery插件 链接是http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js 并删除所有其他jquery插件