HTML5 の時点で、広く使用され推奨されているのaction=""
は無効な HTML です。
仕様から:
action および formaction コンテンツ属性が指定されている場合は、有効な URL の値が必要です。
action
では、属性が現在のページを指すようにする正しい方法は何でしょうか?
私は現在使用しています
action="<php htmlspecialchars($_SERVER["REQUEST_URI"]); ?>"
空の文字列は有効な URL ではないため、action=
属性を空にすることはできません。ただし、単純に省略してブラウザに認識させることは有効です。
ブラウザは現在のページを想定します。
値を「.」に設定できます。または、action 属性をまったく設定しないでください。
<form method="post">
or
<form method="post" action=".">
(私は驚きましたが、空白のままにするのは本当に無効です。少なくともvalidator.w3.orgはエラーを返しています)。
いいえ、HTML5 ではaction
属性を省略できます。デフォルトでは、現在のドキュメントへの参照を意味するemoty 文字列になります。