web-dev-qa-db-ja.com

セルフページでhtmlフォームを送信する

HTMLフォームを自分自身に送信したい。 action属性を使用するにはどうすればよいですか?

  1. <form action="">
  2. <form action="#">
  3. <form action="some/address">
  4. <form>

どちらが望ましいですか?

88
OTAR

2013年には、すべてのhtml5を使用して、 'action'属性を省略してフォームを自己送信できます。

<form>

実際、 現在のHTML5ドラフトのフォーム送信サブセクション では、action = ""(空の属性)は許可されていません。それは仕様に反しています。

この他のStackoverflowの回答 から

111
Milche Patern

アクション属性を空白のままにすることができます。フォームは同じページで自動的に送信されます。

<form action="">

w3c仕様 によると、アクション属性は一般的に空でない有効なURLでなければなりません。また、アクション属性が空のままになる場合がある状況についての説明もあります。

要素のアクションは、要素が送信ボタンであり、そのような属性がある場合は要素のformaction属性の値、フォーム所有者のアクション属性がある場合はその値、または空の文字列です。

したがって、それらはまだ有効で動作しています:

<form action="">
<form action="FULL_URL_STRING_OF_CURRENT_PAGE">

視聴者がhtml5ブラウザーを使用していることが確実な場合は、action属性を省略することもできます。

<form>
15
muratgozel

?を使用します。

<form action="?" method="post">

ユーザーを同じページに送り返します

13
Le Codeur

Phpを使用してフォームを送信する場合は、必ず使用してください。

action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"

セキュリティ用

9
Buts

アクション属性の同じページを使用して実行できます:action='<yourpage>'

0
DarkAjax