1 форма и 2 submit без JS

Когда-то давно я приводил пример реализации 1 формы и 2 submit`ов к ней. “Старая” реализация была сделана на JS и удачно работает по сей день, но с приходом HTML5 стало как-то неправильным НЕ пользоваться его возможностями.

Сегодня использовать HTML5 уже можно в полной мере и бояться тут нечего.

Совет: У меня много знакомых, которые настоящие фанаты спорта. У них есть свое мнение и они искренне верят в то, что говорят. У меня всегда возникал вопрос, почему бы не взять и не воспользоваться этими ценными знаниями в меркантильных целях. Европейские букмекерские конторы открывают большие возможности. Есть конечно определенный риск во всем этом, но, ёлки-палки, не рискует только тот, кто вообще ничего не делает.

Ложка дёгтя

Использование новых фишек, которые открывает HTML5, позволяет существенно сэкономит трафик и сократить общее время загрузки страницы. Есть конечно же вероятность, что ваш посетитель использует браузер, который не поддерживает новые стандарты и к счастью, что вероятность эта на сегодня достаточно мала.

Мне кажется, что стоит идти в ногу со временем, чем постоянно оглядываться назад и стараться понравиться всем, лично тормозя весь web-прогресс. Возможно, благодаря Вам некоторые посетители обновят свои старые IE7. Всегда приятно быть причастным к чему-то большому и значимому.

Ложка мёда

Никто не будет спорить, что с приходом HTML5 стало намного проще делать некоторые, обыденные вещи. К примеру, мало кого удивишь css-свойством border-radius. Хотя несколько лет назад его заменяла png-картинка. Сейчас вряд ли встретишь человека, который бы до сих пор использовал для скругления углов блока картинки стараясь поддерживать нормальное отображение в IE версии 5.5. Если конечно же этого не требует жестокое ТЗ заказчика.

Точно также обстоит дело и с двумя сабмитами одной формы. Раньше, когда этого нельзя было сделать “стандартными” методами HTML, делали на JS или того хуже на jQuery. Такое решение занимало несколько килобайт, сейчас же можно обойтись несколькими байтами.

Реализация

Вот рабочий код:

<form method="post">
    <button type="submit" name="view" formaction="view.php">
        Предварительный просмотр
    </button>
    <input type="submit" name="create" formaction="create.php" value="Создать" />
</form>

button и input здесь приведены только в качестве примера и не обязательно их наличие обоих. То есть можно как button, button, так и input, input. Кстати, кнопок не обязательно должно быть 2 может быть больше.

Как уже можно догадаться за все отвечает параметр formaction. Раньше action был у тега form, сейчас его вынесли в кнопки с типом submit.

Комментарии:

Имя
e-mail
Сайт
Текст комментария: