表单action
属性为“#”(数字/井号/符号/字符)是什么意思?
当表单输入的 formaction
属性设置为“#”时会发生什么?这会阻止将输入提交到服务器吗?
<form method="GET" action="example.php">
<input type="text" size="20" name="text1" value="text1" formaction="#"/>
<input type="text" size="20" name="text2" value="text2"/>
<input type="submit" value="Submit"/>
</form>
最佳答案
#
的含义作为 URL 引用(无论是 action
还是 formaction
属性值或其他)是对当前基础文档开头的引用。基本文档是当前文档,除非 <base href=...>
标记已设置。
会发生什么取决于情况。通常,浏览器使用 URL 中的查询部分再次请求页面(并且页面被再次加载,这可能意味着客户端脚本正在运行),但如果之前使用过相同的查询,浏览器可能会使用它的缓存。此外,由于引用了文档的开头,任何表单元素上的焦点都会丢失,页面可能会向后滚动。
所以虽然#
在某些编码风格中相当普遍,它不可靠;使用客户端事件处理程序可以更好地实现其目的。
formaction
属性仅对提交按钮有意义。文本输入元素不构成提交按钮,即使它可能触发表单提交,所以这里忽略该属性。
关于html - 表单 Action 属性为 "#"(数字/井号/符号/字符)是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8862035/