2011-01-18 5 views
4

은 내가 (PHP5, JQuery와 + UI와 dataTables.net를 사용하여), 내 페이지 http://datatables.net/examples/server_side/server_side.html에이 예제 작업을 한서버 측 처리로 dataTable에 사용자 정의 열을 추가하는 방법은 무엇입니까?

내가 어떻게 할 수하는 수정을 추가하고 각 행에 대한 링크를 삭제 할 수 있도록하고 싶습니다

그 서버에서 링크와 함께 두 개의 여분의 열을 보내지 않고? 내가 행이 데이터베이스에있는 ID를 대체 할 수 있으며, 그이 좋은 수는 iTotalDisplayRecords까지 1부터 시작하여 서버에서 전송하는 방법도

은 ...

+0

두 개의 열을 보내는데 무슨 문제가 있습니까? –

+2

나에게 나쁜 해결책 인 것처럼 보입니다. 모든 아약스 요청에 여분의 데이터를 보내고 링크를위한 HTML 코드를 보내면 경로가 언젠가 바뀌면 ... 자바 스크립트가 플라이에서 추가 할 수 있다면 간단 할 것입니다 fnRowCallback을 많이 사용하는 – max4ever

답변

3

발견 감사 방법

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); 
         } 
       }, 
+2

fnDrawCallback보다 빠르고 반응이 빠릅니다! (500rows 또는 물건을 가지고있을 때) 그리고 그것은 응답하지 않는 스크립트에 대한 에러를주지 않는다. – max4ever

관련 문제