Foros del Web » Programando para Internet » Javascript »

problema con formulario en firefox

Estas en el tema de problema con formulario en firefox en el foro de Javascript en Foros del Web. buen dia, tengo un problema, como supongo que es por unas funciones en js posteo el problema aqui, en caso de que este no sea ...
  #1 (permalink)  
Antiguo 25/06/2012, 08:33
 
Fecha de Ingreso: enero-2012
Mensajes: 64
Antigüedad: 12 años, 3 meses
Puntos: 0
problema con formulario en firefox

buen dia, tengo un problema, como supongo que es por unas funciones en js posteo el problema aqui, en caso de que este no sea el sitio apropiado por favor muevanlo a donde debe pero en fin, tengo las siguientes funciones en js.

Código Javascript:
Ver original
  1. <script language="JavaScript" type="text/javascript">
  2.  
  3. function validaletras(caracter)
  4. {
  5.  if ( ((caracter. keyCode >= 65) && (caracter. keyCode <= 90))  ||
  6.       ((caracter. keyCode >= 97) && (caracter. keyCode <= 122)) ||
  7.       ((caracter. keyCode == 32) || (caracter. keyCode ==8)) )
  8.  {
  9.   return true ;
  10.  }
  11.  else
  12.  {
  13.    alert ( "Debe introducir unicamente letras" ) ;
  14.    //document.mi forma. letras. select ;
  15.    return false ;
  16.    }
  17. }   // letra
  18.  
  19. </script>
  20.  
  21. <script language="JavaScript" type="text/javascript">
  22.  
  23. function validaespecial(caracter)
  24. {
  25.  if ( ((caracter. keyCode >= 65) && (caracter. keyCode <= 90))  ||
  26.       ((caracter. keyCode >= 97) && (caracter. keyCode <= 122)) ||  
  27.       ((caracter. keyCode >= 40) && (caracter. keyCode <= 41)) ||
  28.       ((caracter. keyCode >= 44) && (caracter. keyCode <= 46)) ||
  29.       ((caracter. keyCode >= 58) && (caracter. keyCode <= 59)) ||
  30.       ((caracter. keyCode >= 63) && (caracter. keyCode <= 64)) ||
  31.       ((caracter. keyCode == 32) || (caracter. keyCode == 8))   ||
  32.       ((caracter. keyCode >= 48) && (caracter. keyCode <= 57)) ||
  33.       (caracter. keyCode == 8) || (caracter. keyCode == 36) )
  34.  {
  35.   return true ;
  36.  }
  37.  else
  38.  {
  39.    alert ( "Debe introducir unicamente letras, números y ciertos signos de puntuación" ) ;
  40.    //document.mi forma. letras. select ;
  41.    return false ;
  42.    }
  43. }   // letra
  44.  
  45. </script>
  46.  
  47. <script language type="text/javascript">
  48. function soloNumeros(caracter)
  49. {
  50.    
  51.     if (caracter.keyCode==8 || (caracter.keyCode>=48 && caracter.keyCode<=57)){
  52.         return true;
  53.         }
  54.         else
  55.         {
  56.         alert("Debe introducir unicamente números");
  57.             return false;
  58.         }
  59.     }
  60. </script>

se supone que al capturar algunos datos en un formulario, la funcion validaletras solo valida que unicamente se escriban letras en campos como el nombre de la persona, validaespecial solo valida que se acepten caracteres como numeros, letras y signos de puntuacion para campos como descripciones u observaciones, y por ultimo, la funcion solonumeros valida que unicamente se escriban numeros en campos como numero de folio o numero de telefono. mi problema radica en que al ejecutar mi pagina con el formulario en chrome e IE las funciones trabajan bien, pero trabajando en firefox, al momento de escribir algo, lo que sea, las funciones se ejecutan, es decir, si intento escribir un nombre con letras, la funcion validaletras se ejecuta y no me deja escribir nada, y lo mismo con los demas campos donde tengo las otras dos funciones, a que se puede deber esto? un saludos y espero su gran ayuda
  #2 (permalink)  
Antiguo 25/06/2012, 10:17
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema con formulario en firefox

cada navegador implementa diferentes formas de acceder al teclado, investiga sobre los eventos en cada navegador
http://dev.kanngard.net/Permalinks/I...426091851.html
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/06/2012, 11:58
 
Fecha de Ingreso: enero-2012
Mensajes: 64
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: problema con formulario en firefox

hola, disculpa mi ignorancia, no soy experto en javascript, quiza un novato o algo inferior, ¿a que te refieres con formas de acceder al teclado y eventos en cada navegador? sobre el segundo punto ¿los eventos como onkeypress se ejecutan diferente dependiendo el navegador? gracias
  #4 (permalink)  
Antiguo 25/06/2012, 13:42
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: problema con formulario en firefox

el evento en sí es igual, lo que cambia es el modo de acceder a las teclas pulsadas, unos usan keyCode, otros which, en el enlace que te deje tienes el ejemplo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 25/06/2012, 17:27
 
Fecha de Ingreso: enero-2012
Mensajes: 64
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: problema con formulario en firefox

agradesco a maycolalvarez por su apoyo, al final modifique las funciones de la siguiente manera:

Código Javascript:
Ver original
  1. <script language="JavaScript" type="text/javascript">
  2.  
  3. function validaletras(e) { // 1
  4.     tecla = (document.all) ? e.keyCode : e.which; // 2
  5.     if (tecla==8) return true; // 3
  6.     patron =/[A-Za-zñÑ\s]/; // igual que el ejemplo, pero acepta también las letras ñ y Ñ
  7.     te = String.fromCharCode(tecla); // 5
  8.     return patron.test(te); // 6
  9. }
  10.  
  11. </script>
  12.  
  13. <script language="JavaScript" type="text/javascript">
  14.  
  15. function validaespecial(e) { // 1
  16.     tecla = (document.all) ? e.keyCode : e.which; // 2
  17.     if (tecla==8) return true; // 3
  18.     patron =/[\w\sñÑ,.-]/; // igual que el ejemplo, pero acepta también las letras ñ y Ñ
  19.     te = String.fromCharCode(tecla); // 5
  20.     return patron.test(te); // 6
  21. }
  22.  
  23. </script>
  24.  
  25. <script language="JavaScript" type="text/javascript">
  26.  
  27. function soloNumeros(e) { // 1
  28.     tecla = (document.all) ? e.keyCode : e.which; // 2
  29.     if (tecla==8) return true; // 3
  30.     patron = /\d/; // Solo acepta números
  31.     te = String.fromCharCode(tecla); // 5
  32.     return patron.test(te); // 6
  33. }
  34.  
  35. </script>

ya no manda mensajes de alerta cuando se intenta meter un caracter no valido, simplemente no lo introduce, gracias!!!!

Etiquetas: firefox, formulario, funcion, js, select
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 09:42.