我有很深的多維輸入,像這樣一種形式:
<form id="theForm">
<input type='text' name='one[two][three][]' />
<input type='text' name='one[two][three][]' />
<input type='text' name='four[five][six][seven]' />
<input type='text' name='eight[nine][ten]' />
</form>
我試圖通過AJAX相同的格式發送的值,就好像提交表單一般。我的意思是,如果我點擊提交按鈕,在PHP中,$ _POST看起來像這樣。這是我想要的:
array('one' => array('two' => array('three'=>array([0] => "", [1] => ""))),
'four' => array('five' => array ('six' => array('seven' => ""))),
'eight' => array('nine' => array('ten' => "")))
)
我基本上是想AJAX的表單提交。當我做
$("#theForm").serializeArray()
而過分$.post()
我的$ _ POST看起來像這樣發送:
array([0] => array("name" => string "one[two][three][]", value=>"")
[1] => array("name" => string "one[two][three][]", value=>"")
[2] => array("name" => string "four[five][six][seven]", value=>"")
[3] => array("name" => string "eight[nine][ten]", value=>"")
)
這是對我沒有用的。我需要保留我之前概述的多維結構。我想我可以穿過陣列並切斷字符串以重新創建我需要的東西,但這對我來說似乎是天作之作。 jQuery友好的方式來實現這一點?
我讀過關於jQuery如何發送多維數組的很好的其他文章,所以也許我需要問的問題是,如何提取我的表單數據,並將其保存在多維數組中?
[看看這個答案】(http://stackoverflow.com/a/1186309/575527)。這將表單轉換爲JS對象,通過將元素正確地轉換爲對象和數組,可以保留表單數組的鍵值結構。 – Joseph 2013-02-27 19:05:11
你可以通過AJAX顯示你通過AJAX發送數據的代碼嗎? – 2013-02-28 15:38:14