我找不到具有類似問題的線程是非常尷尬的...... 那麼,讓我們假設我有一個帶複選框的標準HTML表單(將被解析爲PHP中的數組),注意括號中的name屬性:如何在jQuery中序列化數組的複選框
<form class="myForm" action="evaluate.php" method="get">
<input type="text" name="name" value="" placeholder="Your name"/>
<input type="checkbox" name="facts[]" value="1" id="fact-1"/><label for="fact-1">Fact 1</label>
<input type="checkbox" name="facts[]" value="2" id="fact-2"/><label for="fact-2">Fact 2</label>
...
</form>
,現在我想jQuery的序列化形式與內容:
alert($('.myForm').serialize());
預期的結果會是這樣像這樣:
name=MyName&facts[]=1&facts=[]=2&...
但遺憾的是它沒有,因爲括號「[]」被轉義:
name=MyName&facts%5B%5D=1&facts=%5B%5D=2&...
有沒有人,除了寫一個自己的序列化腳本,這個問題的解決方案?
OK,我發現一個線程在談論這裏:http://stackoverflow.com/questions/304518/how- to-send-serialize-form-data-using-jquery-if-the-input-element-is-an-an數組,但是沒有可接受的解決方案。 「serialize()。replace('%5B%5D','[]')」我覺得有點冒險。 – kernel
請花些時間閱讀[faq]。如果沒有適合你的答案,你只需要添加一個賞金。我知道你是新人,沒有代表分配獎金,但回答幾個問題並獲得開設小獎金所需的50個代表真的不是那麼難。 – zzzzBov
k我會聽從你的建議。 – kernel