Я пишу приложение ASP.NET и хочу использовать jQuery DataTables.
На главной странице (которая не находится в корневом каталоге) я включаю сценарии в код позади:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
ScriptManagerSM.Scripts.Add(new ScriptReference(Page.ResolveUrl("~/js/jquery.min.js")));
ScriptManagerSM.Scripts.Add(new ScriptReference(Page.ResolveUrl("~/js/jquery-ui.min.js")));
ScriptManagerSM.Scripts.Add(new ScriptReference(Page.ResolveUrl("~/js/DataTables/jquery.dataTables.js")));
ScriptManagerSM.Scripts.Add(new ScriptReference(Page.ResolveUrl("~/js/setup.js")));
Page.Header.DataBind();
}
На странице у меня есть только чистый HTML:
<table class="table display"><br>
<thead><br>
<tr><br>
<th>Header</th><br>
<th>Header 2</th><br>
</tr><br>
</thead><br>
<tbody><br>
<tr class="gradeX"><br>
<td>Cell 1</td><br>
<td>Cell 2</td>
</tr><br>
</tbody><br>
</table>
jQuery вызывается селектором класса в моем файле setup.js:
$(function() {
var oTable = $('.table').dataTable( {<br>
"bJQueryUI": true,<br>
"sScrollX": "",<br>
"bSortClasses": false,<br>
"aaSorting": [[0,'asc']],<br>
"bAutoWidth": true,<br>
"bInfo": true,<br>
"sScrollY": "100%",<br>
"sScrollX": "100%",<br>
"bScrollCollapse": true,<br>
"sPaginationType": "full_numbers",<br>
"bRetrieve": true<br>
} );<br>
});
Все работает на страницах, помещенных в корень. Но на страницах в подпапках jQuery не запускается. Похоже, какая-то проблема на пути, но я не вижу.
Спасибо за помощь o..o
редактировать: добавлен скрипт установки
edit 2: добавлен вызов jQuery
edit 3: добавлено $ (function () {к js-коду выше (уже существует в моем реальном коде, просто отсутствует здесь)