【问题标题】:does DOM order determine the order of form parameters posted?DOM 顺序决定表单参数发布的顺序吗?
【发布时间】:2011-03-19 00:43:53
【问题描述】:

如果我有这样的表格:

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

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

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

【问题讨论】:

    标签: html http dom webforms browser


    【解决方案1】:

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

    application/x-www-form-urlencoded...

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

    multipart/form-data...

    部件按照相应控件出现在文档流中的相同顺序发送到处理代理。

    我还没有遇到不遵循这个约定的浏览器,所以我想说你用它很安全。

    话虽如此,我的语义骨骼对依赖这种约定有点不舒服。如果订购很重要,我会改用:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-17
      • 1970-01-01
      • 2011-08-26
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 2012-02-20
      • 1970-01-01
      相关资源
      最近更新 更多