如何使用服务器端处理向DataTables添加自定义列?

max*_*ver 5 php jquery datatables

我已经在我的页面http://datatables.net/examples/server_side/server_side.html上使这个例子工作了,(使用php5,jquery + ui和dataTables.net)

我希望能够在每一行上添加一个修改和删除链接,如何在不从服务器发送带有链接的两个额外列的情况下执行此操作?

另外我怎么能用数据库中的行代替id,并且服务器发送的数字从1开始直到iTotalDisplayRecords ...

谢谢

max*_*ver 4

找到了如何

var controller_name = '<?php echo Zend_Controller_Front::getInstance()->getRequest()->getControllerName();?>';


"fnDrawCallback": function ( oSettings ) {
                    /* Need to redo the counters if filtered or sorted */

                        for ( var i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++ )
                        {
                            var link = $('&nbsp;<a href="/'+controller_name+'/modifica/id/'+ oSettings.aoData[ oSettings.aiDisplay[i] ]._aData[0]+'">Modifica</a> <a href="/'+controller_name+'/cancella/id/'+ oSettings.aoData[ oSettings.aiDisplay[i] ]._aData[0]+'">Cancella</a>');
                            $('td:eq(0)', oSettings.aoData[ oSettings.aiDisplay[i] ].nTr ).html( i+1 );
                            $('td:eq(0)', oSettings.aoData[ oSettings.aiDisplay[i] ].nTr ).append(link);
                        }
                },
Run Code Online (Sandbox Code Playgroud)

  • 使用 fnRowCallback 比 fnDrawCallback 更快且响应更快!(当超过 500 行或其他内容时)并且它不会给出有关脚本未响应的错误 (3认同)