2013-05-22 2 views
1

이 코드 목록이 있습니다. datatables에 대한 링크를 추가하고 싶습니다. 오류가 발생했습니다 : DataTables warning (table id = 'example') : 요청 된 알 수없는 매개 변수 '3 '내가 확인을 클릭하면 행 0의 데이터 소스에서, 그것은 내가 추가 한 링크를로드하지 않습니다, 여기 내 코드는자세한 정보는 datatables에 대한 링크 추가

<script type="text/javascript" charset="utf-8">   
    $(document).ready(function() { 
     var oTable = $('#example').dataTable({ 
      "bProcessing": true, 
      "sAjaxSource": "<?php echo base_url('operations/dataDisplayBanks/'); ?>", 

      "aoColumns": [ 
       { "mData": "bank_id" }, 
       { "mData": "bank_name" }, 
       { "mData": "absolute_amount" }, 
       { 
        "fnRowCallback": function(nRow, aData, iDisplayIndex) { 
         $('td:eq(3)', nRow).html('<?php echo base_url() ?>operations/display/' + aData[0] + '">' + 
          aData[0] + '</a>'); 
         return nRow; 
        } 
       }, 

      ] 

     }); 

    }); 
</script> 


<div id="demo"> 
    <table cellpadding="0" cellspacing="0" border="0" class="display" id="example"> 
     <thead> 
      <tr> 
       <th>Client ID</th> 
       <th>Client Name</th> 
       <th>Absolute Limit</th> 
       <th>History</th> 

      </tr> 
     </thead> 
     <tbody> 
     </tbody> 
     <tfoot> 

    </table> 
</div> 
+0

당신이 에코 BASE_URL 전에 여는 태그가 없습니다 아닌가요? – JayPea

+0

는 실제 코드 –

답변

4

편집 :

{ 
    "bProcessing": true, 
    "sAjaxSource": "<?php echo base_url('operations/dataDisplayBanks/'); ?>", 
    "aoColumns": [ 
     { "mData": "bank_id" }, 
     { "mData": "bank_name" }, 
     { "mData": "absolute_amount" }, 
     { "mData": "history" } //need an entry here for history 
    ], 
    "fnRowCallback": function(nRow, aData, iDisplayIndex) {...} 
} 

귀하의 데이터는 다음과 같이 보일 것입니다 데이터로부터 URL을 생성하는 구현

여기에 코드를 사용하여 코드를 추가하고 FnRowCallback을 제거한 예

{ "mData": null , //its null here because history column will contain the mRender 
    "mRender" : function (data, type, full) { 
    return '<a href="<?php echo base_url(); ?>operations/display/'+full[0]+'">'+full[0]+'</a>';} 
    }, 

문서 : http://www.datatables.net/release-datatables/examples/advanced_init/column_render.html

+0

감사합니다. 문제 해결에 도움이되었습니다. – alphy

1

당신은 역사의 속성에 대한 aoColumns의 항목을 필요로하는이 해결한다 오류가 발생했습니다. Datatables는 값을 프로그래밍 방식으로 설정하려는 경우에도 테이블의 모든 열에 대해 값을 기대합니다. 이 문제를 해결할 길을 찾지 못했습니다.

또한 fnRowCallbackaoColumns의 일부가 아니어야합니다. fnRowCallback은 datatables 구성 객체 (즉, aoColumns 피어)의 일부 여야합니다.

귀하의 설정은 다음과 같이 보일 것입니다 : 내가 mRender 서버 측에 FnRowCallback 이상 사용이 바람직하다 말을 의미

[{ 
    "bank_id":1, 
    "bank_name": "Fred's Bank", 
    "absolute_amount": 1000, 
    "history": "" 
}, 
... 
] 
+0

으로 나의 대답을 업데이트했습니다. 당신이 의미하는 바를 실증 할 수 있다면, 역사 열은 db pa se에서 오지 않았습니다. – alphy

+0

돌아 오는 JSON 데이터에 'history'속성을 추가해야합니다 DB에서 기본적으로 값에 대한 빈 문자열 만있는 더미 속성입니다. 그런 다음'fnRowCallback'을 사용하여 원하는 열의 값을 설정할 수 있습니다. 그것이 비슷한 상황에서해야만하는 일입니다. – cfs

관련 문제