我有一個動態生成的表單,允許用戶輸入新數據和編輯現有數據。提交表單時,它會對輸入值進行整理,並根據它們是否爲新進行分組,前者由class="new-entry"
表示。CodeIgniter - 將多個陣列發佈到控制器
因此該函數會生成兩個數組:updateData
和insertData
。兩個陣列是類似格式:
[
0: {
'id' = 1,
'value' = foo
},
1: {
'id' = 1,
'value' = 'bar'
},
etc...
]
我它們合併成一個新的數組對象通過AJAX發送到控制器:
var postData = {
'update_data': updateData,
'insert_data': insertData
};
然後在AJAX調用:
$.post(url, postData, function() { // some code });
但是,在控制器中,做print_r($this->input->post())
或print_r($_POST)
作爲測試只返回Array()
。即使$this->input->post('update_data')
也不會返回任何內容。
如何在控制器中檢索這些數組?
得到的是'updateData' JSON字符串?否則,我建議'JSON.stringify(updateData)'。當然,'insertdata'也一樣。 – Johan
我剛剛在我的本地主機上試過你的代碼,它工作正常。 但我做了什麼,我不知道你做的是否我用 '$('。form')。serializeArray()' 你可能需要它! –
@Johan我嘗試在updateData和insertData上使用JSON.stringify(),但控制器完全沒有返回任何內容,甚至沒有返回空數組。 – Bobe