Разнести значения отключенных элементов формы
У меня есть форма, в которой мне нужно отключить массив флажков и несколько полей, чтобы пользователь не мог изменить/изменить их значения. Когда я отправляю форму, значения POST отключенных элементов отсутствуют/null. Как мне справиться с тем, что я пытаюсь сделать, без этой проблемы?
Прямо сейчас я отключаю поля, отключая контейнер div следующим образом:
#unselectable {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-o-user-select: none;
-webkit-user-select: none;
cursor:not-allowed;
}
4 ответа:
Ну, есть 3 решения, которые я могу придумать:
- Сделайте их
readonly
, добавив свойствоreadonly
к элементу.- отключите их в CSS / JavaScript. Раскрасьте его, как будто он отключен, и не разрешайте редактирование с помощью JavaScript,
- Оставьте его отключенным и удалите отключенное при отправке.
Выбирайте сами:)
Вы можете использовать
readonly
вместоdisabled
, что почти одинаково для пользователя (не может быть editet), но значенияreadonly
- элементов передаются, аdisabled
- Нет.Обратите внимание, что есть некоторые другие различия между readonly и disabled, которые могут привести к другим проблемам для вас:
Отключенный атрибут
- значения для отключенных элементов формы не передаются в метод процессора. Консорциум W3C называет это успешный элемент.(Это работает аналогично установите флажки, которые не установлены.)
- некоторые браузеры могут переопределять или предоставлять стиль по умолчанию для отключенных элементов формы. (Серый или тиснение текста) Internet Explorer 5.5 является особенно неприятно об этом говорить.
- отключенные элементы формы не получают фокус.
- отключенные элементы формы пропускаются при навигации по вкладкам.
Атрибут Только Для Чтения
- не все элементы формы имеют атрибут ReadOnly. Наиболее заметные, элементы,, и не имеют только чтение атрибуты (хотя оба они имеют отключенные атрибуты)
- браузеры не предоставляют переопределенной визуальной обратной связи по умолчанию, что элемент формы доступен только для чтения. (Это может быть проблемой ... см.)
- элементы формы с набором атрибутов readonly будут переданы обработчику форм.
- элементы формы только для чтения могут получить фокус
- элементы формы только для чтения включены в табуляцию навигация.