Quiero desactivar la escritura en un campo de entrada de tipo text
usando JavaScript, si es posible. El campo de entrada se llena desde una base de datos; es por eso que no quiero que el usuario modifique su valor.Cómo deshabilitar un tipo de entrada = texto?
Respuesta
Si sabe esto cuando se procesa la página, lo que parece que hace porque la base de datos tiene un valor, es mejor desactivarla cuando se represente en lugar de JavaScript. Para ello, sólo tiene que añadir el atributo readonly
(o disabled
, si quieres eliminarlo de la sumisión de la forma también) a la <input>
, así:
<input type="text" disabled="disabled" />
//or...
<input type="text" readonly="readonly" />
obtener una referencia a su buzón de entrada de tu gusto (por ejemplo document.getElementById('mytextbox')
) y establecer la readonly
propiedad a true
:
myInputBox.readonly = true;
Como alternativa, simplemente puede añadir esta línea de propiedad (sin JavaScript necesario):
<input type="text" value="from db" readonly="readonly" />
Si estás escribiendo HTML (en contraposición a XHTML) que sería 1 –
Si los datos se rellena a partir de la base de datos, podría considerar no usando una etiqueta <input>
para mostrarla. Sin embargo, puede desactivar las cosas bien en la etiqueta:
<input type='text' value='${magic.database.value}' disabled>
Si tiene que desactivar con Javascript después, se puede establecer el atributo "desactivado":
document.getElementById('theInput').disabled = true;
La razón por la que no sugiero que muestran el valor como <input>
es que, en mi experiencia, causa problemas de diseño. Si el texto es largo, entonces en un <input>
, el usuario tendrá que intentar desplazar el texto, lo cual no es algo normal que la gente pueda adivinar. Si lo dejas caer en <span>
o algo así, tienes más flexibilidad de estilo.
document.getElementById('foo').disabled = true;
EDITAR
o
document.getElementById('foo').readOnly = true;
Tenga en cuenta que debe haber readOnly
en CamelCase para trabajar correctamente en Firefox (magia).
Esto funcionó para mí. La versión de Jquery es $ ('input'). Prop ('disabled', true) –
Esta debería ser la respuesta aceptada. – WebWanderer
Llevo siete años de retraso en esto, pero ¿hay alguna diferencia semántica entre estos dos en 2017? – Jules
También puede por jQuery:
$('#foo').disabled = true;
Una mejor opción es probablemente [esto] (http://stackoverflow.com/a/1414366/1412022) – Nothing4You
@ Nothing4You Estoy de acuerdo –
@Chani Poz Estás llamando a js setter nativo en el objeto jquery resultará con el error. $ ('# foo') [0] .disabled = true o $ ('# foo'). get (0) .disabled = true hará el trabajo –
- 1. Cómo deshabilitar la corrección de corrección gramatical en los campos de texto de tipo de entrada
- 2. Cómo deshabilitar la entrada a un widget de texto, pero ¿permite la entrada de programación?
- 3. Al presionar 'enter' en un tipo de entrada = "texto", ¿cómo?
- 4. ¿Cómo alinear verticalmente texto en tipo de entrada = "texto"?
- 5. Cuadro de entrada HTML - Deshabilitar
- 6. Cómo agregar CSS para el texto tipo de entrada específica
- 7. ancho del 100% en el tipo de entrada enviar frente al texto del tipo de entrada
- 8. entrada [tipo = texto] enviar un valor diferente al mostrado
- 9. entrada de texto simple_form
- 10. Texto de entrada de texto deshabilitado
- 11. Deshabilitar un cuadro de texto con CSS
- 12. Cómo deshabilitar el cuadro de texto de entrada de archivo en IE?
- 13. Detectar si el texto en un elemento de entrada (tipo = texto) excede los límites en FireFox
- 14. Cómo deshabilitar área de texto de TinyMCE
- 15. Perl, deshabilitar la entrada de amortiguación
- 16. Cómo deshabilitar la selección en un cuadro de texto
- 17. Deshabilitar el ajuste de texto
- 18. Cómo establecer el tipo de entrada de un SearchView en
- 19. Secuencia de comandos para habilitar/deshabilitar elementos de entrada?
- 20. Obtener todo el tipo de entrada contraseña
- 21. Deshabilitar un jqueryui datepicker
- 22. ¿Cómo es la forma correcta de desactivar un tipo de entrada = "imagen" usando jquery?
- 23. ¿Diseñar el color de selección de un tipo de entrada = texto, posible?
- 24. ¿Cómo esperar la entrada en un campo de texto?
- 25. ¿Cómo simulo la entrada de texto a un WPF TextBox?
- 26. Ocultar el botón Examinar en un tipo de entrada = archivo
- 27. Cambiar el tipo de un campo de entrada utilizando jQuery (texto -> contraseña)
- 28. Deshabilitar AS3 editable/seleccionable para entrada de texto dentro de una cuadrícula de datos
- 29. Tipo de entrada WPF/cuadro de diálogo?
- 30. ¿Cómo cancelar/editar el valor de entrada en caché (de texto de tipo)?
por solo! No todas las menciones sobre eso. –
No sé por qué esto recibe votos, no responde la pregunta. Esperábamos respuestas de JavaScript. – Sophie
@Sophie es la forma más correcta para que el usuario lo haga en función de su situación, quizás un cambio de título esté en orden. –