Я только начал развиваться с jquery datatables. Я хочу заполнить таблицу из данных, возвращаемых сервером (Grails). На данный момент серверный метод никогда не вызывается. Моя страница выглядит так:
<html>
<head>
<script src="/attendance/static/plugins/jquery-1.8.3/js/jquery/jquery-1.8.3.min.js" type="text/javascript" ></script>
<link href="http://code.jquery.com/ui/1.10.3/themes/trontastic/jquery-ui.css" type="text/css" rel="stylesheet" media="screen, projection" />
<script src="/attendance/static/plugins/jquery-ui-1.8.24/jquery-ui/js/jquery-ui-1.8.24.custom.min.js" type="text/javascript" ></script>
<script src="/attendance/static/js/jquery.dataTables.js"
type="text/javascript"></script>
<script>
$(document).ready(function() {
$('#example').dataTable({
"bServerSide" : true,
"sAjaxSource" : "/events/index"
});
});
</script>
</head>
<body>
<table id="example">
<thead />
<tbody />
</table>
</body>
</html>
В журнале сервера нет записи, указывающей, что метод, указанный sAjaxSource, когда-либо вызывается. Если я запрашиваю/события/индекс вручную в браузере, метод вызывается (и возвращает действительный JSON), и этот запрос отображается в журнале сервера.
Предупреждение, установленное перед вызовом функции dataTable, работает правильно. Я использовал Firebug и подтвердил, что вызов dataTable определенно имеет место - хотя после этого он явно погружается в код dataTables, и я ни в коем случае не являюсь экспертом Javascript.
Я действительно ошибаюсь?
Jquery.dataTables - это плагин jquery.
Но в вашем примере нет библиотеки jquery.
Может быть, это проблема?