Foros del Web » Programando para Internet » Javascript »

Bloquear teclas en campo de texto readonly

Estas en el tema de Bloquear teclas en campo de texto readonly en el foro de Javascript en Foros del Web. Hola mi problema es el siguiente: Tengo un formulario que tiene algunos campos marcados como de sólo lectura: readonly="readonly". Pero lo que pasa es que ...
  #1 (permalink)  
Antiguo 02/05/2012, 06:27
 
Fecha de Ingreso: mayo-2003
Mensajes: 523
Antigüedad: 20 años, 11 meses
Puntos: 6
Bloquear teclas en campo de texto readonly

Hola mi problema es el siguiente: Tengo un formulario que tiene algunos campos marcados como de sólo lectura: readonly="readonly".
Pero lo que pasa es que si por error un usuario presiona sobre uno de esos campos, por ejemplo, la tecla BackSpace el navegador se va a la página anterior (como si se presionara el botón Atrás). También he visto que si se preciona la barra espaciadora sobre un campo de estos hace como un scroll.
Bueno quisiera evitar ese comportamiento, que si se presiona cualquier tecla sobre un campo de sólo lectura no pase absolutamente nada.
  #2 (permalink)  
Antiguo 02/05/2012, 07:20
 
Fecha de Ingreso: marzo-2007
Mensajes: 82
Antigüedad: 17 años, 1 mes
Puntos: 21
Respuesta: Bloquear teclas en campo de texto readonly

Prueba ponerle un return false en el onkeydown cuando esté desabilitado

Código HTML:
Ver original
  1. <input type="text" onkeydown="return false;" id="el-id" />

Con javascript sería:
Código Javascript:
Ver original
  1. var elinput = document.getElementById("el-id");
  2. elinput.onkeydown = function() {
  3.     return false;
  4. }
__________________
Hazle un favor a tu cerebro y juega Ajedrez online
Chess online
  #3 (permalink)  
Antiguo 02/05/2012, 07:32
 
Fecha de Ingreso: mayo-2003
Mensajes: 523
Antigüedad: 20 años, 11 meses
Puntos: 6
Respuesta: Bloquear teclas en campo de texto readonly

Gracias! funciono perfecto con onkeydown="return false;"

Etiquetas: bloquear, formulario, readonly, teclas, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:15.