Я видел много потоков здесь, на SO, которые показывают, как реализовать поиск по вводу (поведение по умолчанию - это поиск после каждого нажатия клавиши), но по какой-то причине, когда я обрабатываю серверную обработку кода DataTables, игнорируется и поведение по умолчанию возвращается. Кто-нибудь знает, как начать поиск только после того, как пользователь нажал кнопку ввода?Результат поиска на стороне сервера DataTables по адресу
Это то, что я получил сейчас и поиск часть кода получает равнину игнорируется (также searchDelay не имеет никакого эффекта - вот от DataTables документации)
var adminRoles;
$(document).ready(function() {
adminRoles = $('#adminRoles').dataTable({
info: true,
order: [[0, 'asc']],
processing: true,
serverSide: true,
searchDelay: 500, //does't work
ajax: {
url: "@Url.Action("GetRoles","Admin")",
type: "POST"
},
columnDefs: [
{ data: "Name", targets: 0 },
{ data: "KeyName", targets: 1 },
{
data: "Id",
className: "text-center editDetail clickable",
render: function (data, type, row) {
return '<button class="btn btn-default btn-xs"><span class="glyphicon glyphicon-pencil text-primary" /></button>';
},
sortable: false,
searchable: false,
targets: 2
}
],
language: {
url: '@Url.Content(@Resource.js_DataTables_Language)'
}
}).api();
$('#adminRoles_filter input').unbind().bind('keypress', function (e) {
if (e.which == 13) {
alert('You pressed enter!'); //doesn't get hit
//adminRoles.search(this.value).draw();
}
return;
});
});
Спасибо за ответ, к сожалению, это не работает. Поиск по-прежнему после каждого нажатия клавиши. Любые другие предложения? –
@azzaidz, обновленный ответ –
Спасибо Gyrocode.com это работает с версией 1.10.10, используя обработку на стороне сервера. –