2009-08-01 9 views
20

Si presento un campo de texto con discapacidad a través de POST, lo que será el valor que resulta estar en la página de acción?¿Se enviará un campo de texto deshabilitado cuando se publique un formulario?

Por ejemplo, tengo:

<table border=0 cellpadding=4 cellspacing=0> 
<tr><td> 
    <input type="checkbox" id="chk_$item" 
    onClick="javascript:handleClick('$item')"> 
</td><td> 
    <input type="text" id="txt_$item" name="addresses[]" value="$item"> 
</td></tr> 
<tr><td> 
    ...etc... 
</td></tr> 
</table> 

los cheques handleClick() función javascript si chk_$item se comprueba, si no, se desactiva el campo txt_$item texto.

Al enviarla, todos los campos de texto Volver a una matriz addresses[] en un script PHP.

Pero, puedo evitar que el campo de la presentación de cualquier cosa si se desactiva? ¿Lo hará por defecto? Si no, ¿cómo debería cambiar el comportamiento? (Realmente no quiero borrar los campos cuando se desactivan).

Respuesta

57

entradas de movilidad no se presentarán con la forma; eso es parte del comportamiento definido de disabled, cf. W3C HTML 4.01 Form docs.

+1

gracias, esto me guardan algún tiempo en mi proyecto –

+1

un enlace a las especificaciones le conseguiría un upvote de mí. –

+1

Ahí va. :) – chaos

21

Si no desea que se cambió, lo convierten en readonly.

+0

En pocas palabras: solo lectura * no * satisface la demanda del OP. Si entiendo correcto, el OP explícitamente quería excluir campos de enviar. Suena similar, pero esencialmente esto es algo completamente diferente. No se trata de proteger el contenido del campo en el lado del cliente, sino de reducir el conjunto de datos de envío recibidos en el lado del servidor. caos sugirió * entradas inhabilitadas *. Sé por pruebas anteriores, que "solo lectura" y "desactivado" incluso se ve diferente en diferentes navegadores web, y de hecho no es lo mismo. – hasienda

+0

Esto sería mejor escrito como un comentario y leer "O, si no quieres que cambie ...". No cumple con la pregunta de OP. Es una solución alternativa a un problema alternativo. – Citizen

Cuestiones relacionadas