formで複数のsubmit先を設定したい

※本サイトはアフィリエイトリンクを掲載しています。
PHP

実現したいこと

formで複数のsubmit先を設定したい。

例えばボタン1とボタン2があり、それぞれの画面遷移先が異なる状況とします。

 

参考例

formactionを使用する

それぞれのボタンに対して、「formaction=遷移先URL」を指定する方法です。

<form method="POST">
 <input type="submit" value="ボタン1" formaction="test1" />
 <input type="submit" value="ボタン2" formaction="test2" />
</form>

 

formタグを複数にしてactionを使用する

<form action="test1" method="POST">
  <input type="submit" value="ボタン1" />
</form>
<form action="test2" method="POST">
  <input type="submit" value="ボタン2" />
</form>

 

formタグを複数にしてJavascriptのsubmit()を使用する

ボタンを押す前にJavascriptを動かしたい場合はJavascriptでsubmitする必要があります。例えばボタンを押したらアラートメッセージを表示させてその後画面遷移させたい場合などです。

<form name="myform1" action="test1">
  <button value="ボタン1"> 
<form>
<form name="myform2" action="test2">
  <button value="ボタン2"> 
<form>
<script>
  document.myform1.submit();
  document.myform2.submit();
</script>

コメント