2017-12-02 8 views
0

DataTable에 대한 AJAX 요청을 추가했습니다. 그것은 잘 작동합니다. 그러나 "serverSide": true을 추가하면 DataTables에 아무 것도 표시되지 않습니다. 이 요청에되면서DataTable 서버 측 처리가 Spring MVC와 작동하지 않음

<script> 

     $(document).ready(function() { 
      var tableProduct = $('#example2').DataTable({"bInfo": false 
       , "bLengthChange": false 
       , "bSort": false 
       , "oLanguage": {"sZeroRecords": "", "sEmptyTable": ""} 
       , "processing": true 
       , serverSide: true 
       , ajax : '${pageContext.request.contextPath}/restservice/ViewProduct' 
      }); 
      $.ajax({ 
       type: 'GET', 
       url: '${pageContext.request.contextPath}/restservice/ViewProduct', 
       success: function (result) { 
        var jString = JSON.stringify(result); 
        var jdata = JSON.parse(jString); 
        for (var x = 0; x < jdata.length; x++) { 
         var td1 = jdata[x].serialNo; 
         var td2 = jdata[x].slsiUnit; 
         var td3 = jdata[x].itemDesc; 
         var td4 = jdata[x].slsNo; 
         var td5 = jdata[x].hsCode; 
         var td6 = jdata[x].hsCode; 
         var td7 = jdata[x].hsCode; 
         tableProduct.row.add([td1, td2, td3, td4, td5, td6, td7]).draw(true); 
        } 
       } 
      }); 

     }); 
    </script> 

답변

0

서버 측 처리가 작동하지의 가장 일반적인 원인은 반환되지 변수 (a 가 DataTables에서 용어 그릴이라고도 데이터의 각 페이지) 무승부 . DataTables는 드로도을 사용하여 그리기 횟수를 유지하므로이 값은 중요한 매개 변수입니다.

DataTables에서 서버로 보내고있는 매개 변수를 검사하고 어떤 JSON 데이터가 반환 될 것으로 예상되는지 확인하려면 server-side usage을 참조하십시오. 다시 해제 방법이 될 것으로 보인다 테이블을 생성 한 후 동일한 URL에 별도의 아약스 요청을하고있다 코드이 외에


, DataTables이 돌봐 때문이다. data in acceptable format 만 보내면됩니다.

+0

내 코드를 수정하는 방법 –

+0

@NipunVidarshana 실제로 문제가 매우 광범위합니다. [DataTables server-side usage doc] (https://datatables.net/manual/server-side)을 따라 DataTable에서 렌더링 할 테이블에 필요한 매개 변수를 확인할 수 있습니다. –