1つのHTMLのページに2つのformと2つのsubmitボタンがあり、かつ、formのactionが同じページを指定している時の処理の分け方です。
サーバーサイドはRubyを使用しています。
HTML
index.erb
<html>
<head>
〜〜〜〜〜中略〜〜〜〜〜
</head>
<body>
<form action="/" method="POST">
〜〜〜〜〜中略〜〜〜〜〜
<input type="submit" name="post" value="投稿">
</form>
〜〜〜〜〜中略〜〜〜〜〜
<form action="/" method="POST">
〜〜〜〜〜中略〜〜〜〜〜
<input type="submit" name="delete" value="削除">
</form>
</body>
</html>
このように、両方のformのactionが"/"
を指定しているとします。
ここで記述しておくのが、submitボタンに対してのname属性
です。
Ruby
app.rb
post "/" do
if params[:post]
# submitmのnameがpostのformの処理
end
if params[:delete]
# submitmのnameがdeleteのformの処理
end
erb :index
end
このように書けば、同じページに対して複数のPOSTがあったとしても処理を分けられるみたいです。