Если вы хотите поддерживать резервное поведение, например, в случае, если ошибка JavaScript препятствует отправке JS, вам понадобится атрибут action
. В противном случае вам не обязательно это нужно.
Один из случаев, когда вам может понадобиться, если вы следуете «ненавязчивой» методологии, которая побуждает вас установить action
, когда форма обрабатывается бэкэндом, а затем, когда вы отправляете форму через JS (AJAX), вы используйте значение action
в качестве цели запроса.
В любом случае вы всегда хотите установить method
в своей форме, даже при отправке через JavaScript; по умолчанию GET
, что приводит к тому, что значения формы отправляются в строке запроса. Когда запрос выполняется без TLS, эта информация передается в открытом виде, и даже с TLS она попадает в кэш, что может привести к раскрытию информации (например, с компьютера с общим доступом).