2015-02-05 13 views
2

프로젝트에서 jQuery Datatables를 사용하고 있으며 모든 것이 잘 작동합니다. 하지만 내 브라우저 콘솔에서 경고 오류 아래에 점점 내가 왜이오고이 오류에 대한 단서를 얻지 못합니다. 그러나 어떤 기능도 멈추지 않습니다.Datatables 정의되지 않은 'fnGetData'속성을 읽을 수 없습니다.

Uncaught TypeError: Cannot read property 'fnGetData' of undefined 

이것은 테이블 그리기 직후 오류입니다.

다음은 내 데이터 테이블에 사용하는 매개 변수입니다. 따라서이 경고 오류에 대한 아이디어를 얻을 수 있습니다.

var initParams = { 
     "bDestroy": true, 
     "autoWidth": false, 
     "bSortClasses": true, 
     "iDisplayLength": 15, 
     "aLengthMenu": [[10, 15, 30, 50, 100, -1], [10, 15, 30, 50, 100, "All"]], 
     "sAjaxSource": defaultReq, 
     "fnServerData": function (sSource, aoData, fnCallback, oSettings) { 
      oSettings.jqXHR = $.ajax({ 
       "dataType": 'json', 
       "type": "GET", 
       "url": sSource, 
       "data": aoData, 
       "success": fnCallback, 
       "error": function (e) { 
        console.log(e.message); 
       } 
      }); 
     }, 
     "aoColumns": cols, 
     "aoColumnDefs": colDef 
    }; 

테이블 데이터를 가져 오기 위해 ajax (sAjaxSource) 요청을 트리거하고 있습니다.

도움이 되셨을습니까?

+0

코드를 찾으면 어떤 문제도 찾을 수 없으므로 바이올린을 만들 수 있습니까? – kabstergo

답변

2

초기화 코드가 맞습니다. 새로운 DataTables 1.10.x 라이브러리 (autoWidth 옵션이 있음)를 사용하고있는 것으로 의심됩니다.

오류 Cannot read property 'fnGetData' of undefined 예를 들어, 당신은 DataTables의 새로운 1.10.x 버전의 API 인스턴스에서 이전 버전 (1.9.x) 메소드 fnGetData()를 호출하려고 할 때 발생할 수 있습니다

var data = $('#example').DataTables().fnGetData(); 

올바른 방법을 호출 모두 1.9.x와 1.10.x 버전 fnGetData()

var data = $('#example').dataTable().fnGetData(); 

자세한 내용은 DataTables 1.9 to 1.10 migration reference를 참조한다.