Это то, что я нашел Firebug в Firefox.
То же самое в других браузерах?
Если так, то в чем причина этого?
form-submit
disabled-input
forms
http-post
О, мой бог
источник
источник
Ответы:
Да, все браузеры не должны отправлять отключенные входные данные, поскольку они доступны только для чтения.
Дополнительная информация (раздел 17.12.1)
источник
<input type="hidden">
элемент с тем же именем / значением, что и у отключенного ввода.disabled
вход не будет отправлять данные.Используйте
readonly
атрибут:Источник здесь
источник
readonly
работает, просто убедитесь, что вы передаете «name» attr на вход.Вы можете использовать три вещи для имитации инвалидов:
HTML:
readonly
атрибут (так что значение, представленное во входных данных, может использоваться при отправке формы. Также пользователь не может изменить входное значение)CSS:
'pointer-events':'none'
(блокирует пользователя от нажатия на вход)HTML:
tabindex="-1"
(блокирует пользователю переход к вводу с клавиатуры)источник
Они не отправляются, потому что это сказано в спецификации W3C .
Другими словами, в спецификации сказано, что отключенные элементы управления считаются недействительными и не должны передаваться.
источник
Disabled
элементы управления не могут быть успешными, и успешный элемент управления «действителен» для отправки. По этой причине отключенные элементы управления не отправляются вместе с формой.источник
Есть два атрибута, а именно
readonly
иdisabled
, что может сделать пол-только для чтения входных данных. Но между ними есть небольшая разница.readonly
Атрибут делает ваш ввод текста отключен, и пользователи не могут изменить его больше.disabled
Атрибут сделает ваш входной текст отключенным (неизменяемым), но и не сможет быть отправлен .JQuery подход (1):
JQuery подход (2):
Подход JavaScript:
PS
disabled
иreadonly
стандартные атрибуты html.prop
представил сjQuery 1.6
.источник
отдельные элементы управления по-прежнему кликабельны даже на атрибуте readonly
если вы все еще хотите отключить элемент управления, но хотите опубликовать его значение. Вы можете рассмотреть возможность создания скрытого поля. с тем же значением, что и ваш контроль.
затем создайте JQuery, выберите изменения
источник