编程语言
首页 > 编程语言> > 使用PHP的Datatables服务器端脚本问题

使用PHP的Datatables服务器端脚本问题

作者:互联网

我面临与数据表有关的问题.我有大量的记录(45,000).所以我使用带有“服务器端”编码的数据表.

问题是这样,它在下面的代码中显示以下错误:

错误:

Uncaught TypeError: Cannot set property ‘nTf’ of undefined

// allows cells to be used for multiple columns using colspan
    if ( tfoot !== null ) {
        var cells = oSettings.aoFooter[0];

        for ( i=0, ien=cells.length ; i<ien ; i++ ) {
            column = columns[i];
            column.nTf = cells[i].cell;


            if ( column.sClass ) {
                $(column.nTf).addClass( column.sClass );
            }

我正在使用的JavaScript代码是:

$(document).ready(function() {
    $('#authorsdatatab').dataTable( {
        "bPaginate": true,
        "processing": true,
        "serverSide": true,     
        "sAjaxSource": "../assets/common/authorsServerSide.php",
});
  });

我用于显示服务器端脚本中的列的数据是:

$aColumns = array( 'a_ID', 'a_name', 'a_birth', 'a_death' );

/* Indexed column (used for fast and accurate table cardinality) */
$sIndexColumn = "a_ID";

/* DB table to use */
$sTable = "authors";

解决方法:

如果其他人遇到此问题,我发现如果您执行以下操作会发生这种情况:

>使用服务器端处理
>在HTML中指定tfoot
>在DataTables Javascript设置中定义一个列数组,其中不包含tfoot中每个单元格的一个列定义

解决方案是确保Javascript中的列定义与HTML中的实际单元格数相匹配.此问题仍与新的DataTables API相关.

标签:jquery,php,datatable,datatables,php-5-4
来源: https://codeday.me/bug/20190717/1490775.html