Атрибут formaction тега <input>
Описание
Атрибут formaction переопределяет атрибут action формы для кнопок <input type="submit"> и <input type="image">. Позволяет отправлять одну форму на разные URL.
<form id="user-form">
<input type="text" name="username" placeholder="Ваше имя">
<!-- Основное действие формы -->
<input type="submit" value="Сохранить">
<!-- Альтернативное действие -->
<input
type="submit"
value="Отправить на проверку"
formaction="/submit-for-review">
</form>
Основные особенности:
| Аспект | Поведение | Примечание |
|---|---|---|
| Применение | Только для submit/image кнопок | Не работает с другими типами |
| Приоритет | Переопределяет action формы | Только для конкретной кнопки |
| Метод | Можно сочетать с formmethod | GET/POST/etc. |
Пример с разными методами:
<form>
<input type="email" name="email" required>
<!-- Основное действие -->
<input type="submit" value="Подписаться">
<!-- Альтернативное действие -->
<input
type="submit"
value="Предпросмотр"
formaction="/preview"
formmethod="get">
</form>
Рекомендации по использованию:
- Используйте для форм с несколькими вариантами отправки
- Сочетайте с
formmethodиformenctype - Указывайте абсолютные или относительные URL
- Тестируйте обработку на сервере
Ограничения и совместимость:
- Поддерживается всеми современными браузерами
- Не работает в Internet Explorer
- Требует JavaScript для сложной валидации
- Не влияет на стандартную кнопку Submit
Примечание: Атрибут formaction особенно полезен для CRUD-интерфейсов, где одна форма может использоваться для создания и редактирования данных. Для сложных сценариев рассмотрите использование JavaScript.