Я хочу, чтобы HTML-форма отправлялась сама себе. Как использовать action
атрибут?
<form action="">
<form action="#">
<form action="some/address">
<form>
Что было предпочтительнее?
Я хочу, чтобы HTML-форма отправлялась сама себе. Как использовать action
атрибут?
<form action="">
<form action="#">
<form action="some/address">
<form>
Что было предпочтительнее?
Ответы:
В 2013 году со всем HTML5 вы можете просто опустить атрибут action, чтобы самостоятельно отправить форму.
<form>
Фактически, подраздел «Отправка формы» текущего черновика HTML5 не допускает action = "" (пустой атрибут). Это противоречит спецификации.
action
атрибут, но не оставить его пустым?
Вы можете оставить атрибут действия пустым. Форма автоматически отправится на той же странице.
<form action="">
Согласно спецификации w3c , атрибут действия должен быть непустым действительным URL-адресом. Также есть объяснение некоторых ситуаций, в которых атрибут действия может оставаться пустым.
Действие элемента - это значение атрибута formaction элемента, если элемент является кнопкой «Отправить» и имеет такой атрибут, или значение атрибута действия его владельца формы, если он есть, или пустую строку.
Таким образом, они оба по-прежнему действительны и работают:
<form action="">
<form action="FULL_URL_STRING_OF_CURRENT_PAGE">
Если вы уверены, что ваша аудитория использует браузеры html5, вы можете даже опустить атрибут действия:
<form>
Если вы отправляете форму с помощью php, обязательно используйте:
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"