2010-07-21 73 views
4

如果我有這樣一種形式:確定DOM順序確定表單參數的順序嗎?

<form> 
    <input name="param[]" /> 
    <input name="param[]" /> 
    <input name="param[]" /> 
</form> 

我能想到的表單提交時以相同的順序接收這些參數?

我注意到Chrome,Rails和Webrat保留了參數的順序,但這可能是由實現細節引起的,而不是遵守標準。

回答

10

這是standard。我發現W3C specification是非常有用和可讀的。

應用程序/ x-WWW窗體-urlencoded ...

名稱/值在它們在文檔中出現的順序列出的控制。

的multipart/form-data的...

的部分在相應的控制出現在文檔流中的相同的順序發送至處理劑。

我還沒有遇到一個不遵循這個約定的瀏覽器,所以我會說你使用它非常安全。

這就是說,依靠這個約定,我的語義骨骼有點不舒服。如果訂購是至關重要的,我會使用:

<form> 
    <input name="param[0]" /> 
    <input name="param[1]" /> 
    <input name="param[2]" /> 
</form>