2016-10-16 9 views
2
私はAJAX経由のDataTableを使用してい

を経由して取り出されたDataTableの列をレンダリングし、私はアヤックス

{ "data": "first_name" + "data": "last_name"}, 

を試してみたこの

var table = $('#data').DataTable({ 
     "ajax": "initTable.php", 
     "columns": [ 
      { "data": "orderid" }, 
      { "data": "first_name"}, 
      { "data": "last_name"}, 
      { "data": "unix" }, 
      { "data": "final_total" } 
     ] 
    }); 

のようなテーブルを表示するしかし、私はエラーを取得し、テーブルには表示されません。 。だから私は変更することができない方法しようとしました次のセル

[UPDATE]

で同じセルにLAST_NAMEする次の最初の名前を表示するためにレンダリング

"ajax": "initTable.php", 
"columns": [ 
      { "data": "orderid" }, 
      { "data": "first_name"}, 
      {"data": "last_name"}, 
      { "data": "unix" }, 
      { "data": "final_total" } 
     ], 
     "columnDefs": [ 
      { 
       "render": function (data, type, row) { 
        return data + row[2]; 
       }, 
       "targets": 1 
      }, 
      { "visible": false, "targets": [ 2 ] } 
     ] 

(注:私は列を定義する必要があります私は多くの列を取得する(約20)と、わずか4または5) を表示したい。しかし、私は続く最初の名前を取得するため、行は次のように「未定義」何か

+0

[コラムレンダリング](https://www.datatables.net/examples/advanced_init/column_render.html)をご覧ください。 – gaetanoM

+0

が更新されました。私は最後の名前は '定義'を取得 –

答えて

1

利用コードの下に「アンディは未定義」:

{ 
    "render": function (data, type, row){ 
     return row["first_name"] + " " + row["last_name"]; 
    }, 
    "targets": 1 
}, 

また、非表示にする場合はlast_name列を含める必要はありません。

+0

大変ありがとうございます。使用された:{"visible":false、 "targets":[2]}は、姓フィールドを非表示にします。 –

+0

@PHPUserテーブルに 'last_name'フィールドを含める必要はなく、' {"data": "last_name"} 'と' {"visible::false、" targets ":[2 ]} 'Ajaxレスポンスで' last_name'が利用可能である限り。 –