2011-02-07 6 views
4

Я создаю викторину с множественным выбором HTML и знаю о технике, которая позволила бы мне использовать несколько кнопок отправки - по одному для каждого ответа на отдельный вопрос. Затем я мог обработать форму на PHP, используя значения кнопки отправки и определить, какой ответ пользователь выбрал. Причина использования кнопок отправки заключается в том, что они могут быть настроены соответствующим образом.Является ли несколько кнопок отправки на HTML-форме плохой практикой?

Тем не менее, мне интересно, является ли это плохой практикой с точки зрения доступности? Было бы лучше использовать индивидуальную форму для каждого ответа на вопрос? Здесь много вопросов о том, как использовать несколько кнопок отправки, но они, похоже, не рассматривают этот вопрос.

ответ

3

Это абсолютно нормально, и во многих случаях может улучшить удобство использования формы. Будьте осторожны, однако, так как есть несколько подводных камней:

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

    Однако IE < = 8 не посылает пару имя/значение для любой кнопки отправки, когда клавиша ввода используется для отправки формы.

    Итак, вы должны знать, что для формы должно быть «действие по умолчанию», и это должен быть первый присутствующий элемент.

  2. Вы не можете использовать эту технику для отправки на другое действие, основанное на нажатии на эту кнопку. Javascript теоретически может решить эту проблему, но вы не должны делать это (хорошая мантра, не использовать Javascript, чтобы решить проблему без Javascript)

2

Что вы будете делать, если форма отправлена ​​с помощью Введите ключ на клавиатуре, и ни одна из кнопок отправки не будет в данных, которые вы получаете на стороне сервера?

+14

Я буду смеяться и нервно менять тему – codecowboy

Смежные вопросы