gpt4 book ai didi

javascript - 为什么没有操作的表单标签会重新加载页面?

转载 作者:太空宇宙 更新时间:2023-11-04 14:27:44 25 4
gpt4 key购买 nike

因此我们知道 action 属性用于将表单数据发送到 Web 服务器。

但是我有几个问题:

  • 如果没有设置action属性,为什么会默认重新加载页面?
  • 不应该是默认行为,如果未设置则不重新加载页面?
  • 是否有涵盖这种情况的规范?
  • 目前在 javascript 中,我们使用 SPA 和其他 Technics 进行大量异步服务器调用,是否有计划在未来改变这种情况?

最佳答案

form 标签总是用来将表单提交给服务器,action 属性的原始定义反射(reflect)了这一点。

The program that will handle the completed and submitted form (the action attribute).

action attribute was actually a required attribute in HTML 4因此,如果未指定,则无效。

HTML5它不是必需的,但默认为当前页面的 URL。

The action IDL attribute must reflect the content attribute of the same name, except that on getting, when the content attribute is missing or its value is the empty string, the document's address must be returned instead.

method 属性控制如何调用action 属性。它的默认值为 GET,表示将进行 HTTP 调用。

The invalid value default for these attributes (ed. the method and formmethod) is the GET state. The missing value default for the method attribute is also the GET state.

因此,如果您未指定任何一个属性,则默认为对您当前所在的页面进行 HTTP GET 调用。您应该在 URL 中看到任何表单元素的名称和值作为查询字符串参数。

据我所知,没有计划更改这些默认值,因为它会破坏 Internet 上的大量表单。

关于javascript - 为什么没有操作的表单标签会重新加载页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45337773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com