2016-07-23 6 views
0

を使ってAjaxサーバーの応答データをデータテーブルに表示する方法はありますが、サーバーの応答データをデータテーブルに動的に表示する必要があります。私はにconsole.logでデータを受け取ることができます(データ)私のページでデータテーブルを初期化した後に、PHPの

$(document).ready(function() { 
     $.ajax({ 
      url: 'xxxxxx/xxxxxxx', 
      method: 'POST', 
      success: function (data) { 
       $('#datatable').dataTable({ 
        data: data, 
        serverside:true, 
        columns: [ 
         { 'data': 'UserId' }, 
         { 'data': 'UserDepartment' }, 
         { 'data': 'UserCourse' }, 
         { 'data': 'UserName' }, 
         { 'data': 'UserBirthDate' }, 
         { 'data': 'UserEmail' }, 
         { 'data': 'UserContact' } 
        ] 
       }); 
      } 
     }); 
    }); 

答えて

0

これを試してみてください。

<?php 
    $sql = "SELECT FROM user"; 
      $sql_result = $conn->query($sql); 

      $response = array('data' => $sql_result); 
      echo json_encode($response); 

    ?> 

    $(document).ready(function() { 
     $.ajax({ 
      url: 'xxxxxx/xxxxxxx', 
      method: 'POST', 
      dataType: 'json', 
      success: function(data) { 
       $('#datatable').dataTable({ 
        data: data, 
        serverside: true, 
        columns: [{ 
         'data': 'UserId' 
        }, { 
         'data': 'UserDepartment' 
        }, { 
         'data': 'UserCourse' 
        }, { 
         'data': 'UserName' 
        }, { 
         'data': 'UserBirthDate' 
        }, { 
         'data': 'UserEmail' 
        }, { 
         'data': 'UserContact' 
        }] 
       }); 
      } 
     }); 
    }); 
+0

もしこのコードが正常に動作しない場合は、echo json_encode($ sql_result);というメッセージが表示されます。 –

+0

リクエストメソッド:POST ステータスコード:500内部サーバエラー – Dhinakar

+0

echo jsencode in PHPのファイル.....何かをエコーし​​ていないか、エラーが原因でエラーが発生していないことを確認してください...あなたはビューのページソースでチェックできます... –

0

を私はあなたがこれを試みることができるあなたは順不同でものを持っていると思う:

$(document).ready(function() 
{ 
    // Setup - add a text input to each footer cell 
    $('#DataTable tfoot th').each(function() 
    { 
     var title = $(this).text(); 
     $(this).html('<input type="text" placeholder="Search ' + title + '" />'); 
    }); 

    var table = $('#DataTable').DataTable({ 
     "select": true, 
     "processing": true, 
     "serverSide": true, 
     "ajax": { 
      "url": "./ServerSide.php", 
      "type": "POST" 
     } 
    }); 
}); 

私はあなたがカラム名をリストアップする必要さえないと確信しています、彼らはurlに渡されたあなたのファイルで取り上げられます。

関連する問題