Esto es lo que encontré por Firebug en Firefox.
¿Es lo mismo en otros navegadores?
Si es así, ¿cuál es la razón de esto?
form-submit
disabled-input
forms
http-post
Dios mio
fuente
fuente

Respuestas:
Sí, todos los navegadores no deben enviar las entradas deshabilitadas, ya que son de solo lectura.
Más información (sección 17.12.1)
fuente
<input type="hidden">elemento con el mismo nombre / valor que la entrada deshabilitada.disabledla entrada no enviará datos.Usa el
readonlyatributo:Fuente aquí
fuente
readonlyfunciona, solo asegúrese de pasar el atributo "name" a la entrada.Puede usar tres cosas para imitar deshabilitado:
HTML:
readonlyatributo (para que el valor presente en la entrada se pueda usar en el envío del formulario. Además, el usuario no puede cambiar el valor de entrada)CSS:
'pointer-events':'none'(impide que el usuario haga clic en la entrada)HTML:
tabindex="-1"(bloqueando al usuario para navegar a la entrada desde el teclado)fuente
No se envían, porque eso es lo que dice en la especificación W3C .
En otras palabras, la especificación dice que los controles que están deshabilitados se consideran inválidos y no deben enviarse.
fuente
Disabledlos controles no pueden tener éxito y un control exitoso es "válido" para el envío. Esta es la razón por la cual los controles deshabilitados no se envían con el formulario.fuente
Hay dos atributos, a saber,
readonlyydisabled, que pueden hacer una entrada de solo lectura. Pero hay una pequeña diferencia entre ellos.readonlyatributo desactiva su texto de entrada y los usuarios ya no pueden cambiarlo.disabledatributo no solo hará que su texto de entrada esté deshabilitado (inmutable) sino que tampoco se puede enviar .Enfoque jQuery (1):
Enfoque jQuery (2):
Enfoque de JavaScript:
PS
disabledyreadonlyson atributos html estándar.propintroducido conjQuery 1.6.fuente
todavía se puede hacer clic en los controles de selección, incluso en el atributo de lectura
si aún desea deshabilitar el control pero desea que se publique su valor. Puede considerar crear un campo oculto. con el mismo valor que tu control.
luego cree un jquery, en el cambio de selección
fuente