DOM命令确定发布的表单参数的顺序吗?

时间:2010-07-21 14:17:01

标签: html http dom webforms browser

如果我有这样的表格:

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

在提交表单时,我可以期望以相同的顺序接收这些参数吗?

我注意到Chrome,Rails和Webrat保留了参数的顺序,但这可能是由实现细节引起的,而不是遵守标准。

1 个答案:

答案 0 :(得分:11)

这是standard。我发现W3C specification非常有用且可读。

  

<强>应用程序/ x-WWW窗体-urlencoded ...

     

控件名称/值按它们在文档中出现的顺序列出。

     

<强>的multipart / form-data的...

     

部件以相同的顺序发送到处理代理程序,相应的控件显示在文档流中。

我还没有遇到不符合此惯例的浏览器,所以我说你使用它是非常安全的。

话虽这么说,依靠这个惯例,我的语义骨头有点不舒服。如果订购至关重要,我会改用:

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