这里说表单元素需要
action
属性:
http://www.w3schools.com/tags/att_form_action.asp
但我看到即使我没有指定操作属性,表单也会被提交,并且表单会被提交到当前页面,这正是我想要的。
该要求仅根据标准。完全有可能在页面上做任何你想做的事情而不遵循标准。如果您这样做,事情可能无法正常显示或工作,但很可能会。我们的目标是关注他们,我们的想法是,如果您关注他们,您的页面将“永远”运行;你不必担心任何事情。 是的,表单
需要才能在 HTML4 中具有 action 属性。如果未设置,浏览器可能会使用与向其提供空字符串相同的方法。您确实应该设置 action=""
,它是完全有效的 HTML4,遵循标准,并达到相同的精确结果。
在 HTML5 中,您实际上可以在提交按钮本身上指定操作。如果没有,它将使用表单的操作,如果未设置,则默认为空字符串(请注意,您无法在 HTML5 中显式地将操作设置为空字符串)。
。我怀疑有些浏览器会做你想做的“让事情变得更容易”。但我不建议依赖它。由于您处于未定义的行为,因此当提交的表单没有 action
时,浏览器可以合理地决定不执行任何操作。
您可以通过将操作留空来获得您想要的行为,同时遵循规范(因为它是相对的,空白表示当前页面):
<form action="" ...>
正如 bazmegakapa 所提到的,HTML5 规范似乎不需要
action
属性
:action 和 formaction 内容属性,
如果指定,必须具有一个值,该值是可能被空格包围的有效非空 URL。[强调已添加]
有趣的是,这意味着在 HTML5 中,
<form action="">
无效,但尚不清楚是否需要没有操作的表单才能工作(提交到当前页面)。