2016-12-20 34 views
0

私がしたいのは、テーブルからすべてのデータを取得し、ポストメソッドを使用してajaxを使用して自動インクリメントされた多次元配列として送信することです。それはサーバに到達するとき、それはあるべきであるように:jQuery DataTablesすべてのテーブル行データを取得し、配列としてポストを送信

$_POST -|-- ['Key1'] = 'value1' <---This is from an HTML input 
     |-- ['Key2'] = 'value2' <---This is from an HTML input 
     |-- ['tabledata']--| -- [0]-| -- ['column1'] = 'value from cell'    
          |  | -- ['column2'] = 'value from cell' 
          | -- [1]-| -- ['column1'] = 'value from cell' 
            | -- ['column2'] = 'value from cell' 

[0]、[1]新しい配列オブジェクトは、この場合における第1および第2の行を表す、作成されたときに生成されるだけオートインクリメント数です。ここ はJSでhttps://jsfiddle.net/v2quhwb8/2/(それは配列ではなく、私はそれらを必要とする方法を返す)JSフィドル、私がこれまでに得たものである:

私自身の答えが見つかり
 $(document).ready(function() { 
    var myTable = $('#example').DataTable({ 
    responsive: true 
    }); 



    var testData = myTable.data().toArray(); 

    $('#myButton').on('click', function() { 

    $.ajax({ 
     type: 'POST', 
     dataType: 'json', 
     url: 'page/postTest.php', 
     data: testData, 
     success: function(response) { 
     // console.log('Server response', response); 
     } 
    }); 

    }); 


}); 
+1

'key1'と' key2'とは何ですか?その値は何ですか? –

+0

Key1とKey2は他の2つの入力からデータを送信しています。 – Alan

+0

'['ajax'] [0]'は列の値の配列でなければなりません? '[0]'はキーかインデックスですか? –

答えて

0

:に変更$.ajax({...

data: testDatadata: {data: testData}を返し、PHP $_POSTに必要な多次元配列を返します。私が以前に尋ねたことは、バックエンドのバカらしい連想配列だったようです。なぜなら、明らかにjavascriptには存在しないからです。

PHPで得られるものは$_POST['data'][0][0]['cell value']なので、最初のゼロは最初から最後までの行、2番目のゼロは左から右へのセルを表します。私はこれと何とかしなければならないだろうと思う。私は更新しましたhttps://jsfiddle.net/v2quhwb8/4/

関連する問題