为什么 formaction 属性在
标签外不起作用?


我们可以让 formaction 属性在 <form> 标签外生效。formaction 属性用于为一个表单指定多个提交 URL。当您提交表单时,Web 浏览器首先检查 formaction 属性。

如果不存在 formaction,Web 浏览器将继续查找表单元素中的 action 属性。

示例

下面是一个 formaction 属性的示例,其中带有三个不同的提交按钮 −

<!DOCTYPE html>
<html>
   <head>
      <title>HTML formaction attribute</title>
   </head>

   <body>
      <form method="post">
         <input type = "text" name="name"/><br>
         <button type = "submit" formaction = "btn1.php">Button1</button>
         <button type = "submit" formaction = "btn2.php">Button2</button>
         <button type = "submit" formaction = "btn3.php">Button3</button>
      </form>
   </body>
</html>

是的,formaction 属性在表单元素外部不起作用,但您仍可以通过以下方式让它们正常工作 −

示例

您可以使用关联的表单 id 值轻松放置按钮并在表单外部使用 formaction 属性。

<!DOCTYPE html>
<html>
   <head>
      <title>HTML formaction attribute</title>
   </head>

   <body>
      <form method="post" id="newForm">
         <input type="text" name="name"/>
      </form>

      <button type="submit" formaction="btn1.php" form="newForm">Button1</button>
      <button type="submit" formaction="btn2.php" form="newForm">Button2</button>
      <button type="submit" formaction="btn3.php" form="newForm">Button3</button>
   </body>
</html>

更新于:2020 年 6 月 15 日

612 次浏览

启动您的职业生涯

完成课程获得认证

立即开始
广告