数据表:禁用第一个下一个上一个最后一个,并在处理时显示/搜索记录

Datatables : disable first next previous last and show / search record when processing

本文关键字:处理 显示 记录 搜索 第一个 下一个 最后一个 上一个 数据表      更新时间:2023-09-26

我正在使用数据表 1.9 版本

var oTable = $('#example').dataTable( {
        "oLanguage": {"sSearch": "Search all columns:",
                      "sLengthMenu": "Display <select><option value='100'>100</option><option value='200'>200</option></select> records per page"
                     },
        "sPaginationType": "full_numbers",
        "bAutoWidth": false,
        "iDisplayStart": 0,
        "iDisplayLength": 2000,
        "bFilter": true,
        "bInfo": true,
        "bSort": true,
        "sScrollX": "100%",
        "sScrollY": "500px",
        "bScrollCollapse": true,
        "bPaginate": true,
        "bSortClasses": true,
        "bLengthChange": true,
        "bProcessing": true,
        "bDestroy": true,
        "bServerSide": true,
        "bDeferRender": true,
        "fnServerParams": function ( aoData ) {
                aoData.push( { "name": "form_data", "value": data } );
        },
        "sAjaxSource": "search.py",
        "fnServerData": function ( sSource, aoData, fnCallback ) {
                $.ajax( {
                                "dataType": 'json',
                                "type": "POST",
                                "url": sSource,
                                "data": aoData,
                                "success": function (json)
                                {
                                        fnCallback(json);
                                        $('html, body').animate({scrollTop:$(document).height()}, 'slow');
                                        document.getElementById("bottom").focus();
                                },
                                "error": function (xhr, error, thrown) {
                                        alert("An Error Occurred.!");
                                }
                });

问题是当我运行搜索并且数据表呈现"正在处理......"文本"显示.搜索",并显示第一个下一个上一个和最后一个按钮。有没有办法在数据表处理或收到来自后端的响应时延迟显示。

您应该将"bPaginate": false,包含在传递给构造函数参数的配置对象中。

如图所示。 因为它是数据表

我不完全理解你的问题。如果你想隐藏这些控件,你可以试试这个。

数据表带有用于筛选和分页的控件。这些可以通过几种方式显示和隐藏(咖啡脚本中的所有示例):方式 1

$("#myTable").dataTable
"bPaginate": false, #hide pagination control
"bFilter": false #hide filter control

方式2:使用"sDom"道具

$("#myTable").dataTable
"aaData": data
"sDom": 'ft'
这里的"f"表示

过滤器,"t"表示表格,因此仅显示这些。订单很重要:"英尺"看跌期权过滤器在顶部,而"TF"将其放在底部。

有关更复杂的小部件和其他小部件,请参阅 Ref参考: http://datatables.net/usage/options#sDom

我从这个链接中得到了答案:https://gist.github.com/1568446

//Hide DataTables Length
<style>.dataTables_length {
  display: none;
}
</style> //Hide Pagination
<style>.pagination {
  display: none;
}
</style> //Hide DataTables Info
<style>.dataTables_info {
  display: none;
}
</style>

这将起作用,但我不建议这样做

请注意,此答案与版本 DataTables 1.13.1 一致

这一切都是用给定的参数对象来初始化表的

const myTable = $('#example').dataTable( args );

要避免分页时的下一个/上一个/第一个/最后一个按钮:

const args = {pagingType: "numbers"};

在此处查找可用于分页类型属性的 6 个选项

要显示/隐藏搜索框:

const args = {searching: true/false};

我希望这有帮助