Foros del Web » Programando para Internet » Javascript »

que permita solo un punto

Estas en el tema de que permita solo un punto en el foro de Javascript en Foros del Web. hola foreros tengo una duda urgente. Tengo esta funcion que me permite validar numeros y punto <script language="JavaScript"> var nav4 = window.Event ? true : ...
  #1 (permalink)  
Antiguo 09/10/2008, 13:02
 
Fecha de Ingreso: septiembre-2003
Ubicación: Sentado frente a un computador
Mensajes: 191
Antigüedad: 20 años, 8 meses
Puntos: 0
que permita solo un punto

hola foreros

tengo una duda urgente.

Tengo esta funcion que me permite validar numeros y punto

<script language="JavaScript">
var nav4 = window.Event ? true : false;
function acceptReal(evt){
var key = nav4 ? evt.which : evt.keyCode;
return ((key <= 13) || (key >= 48 && key <= 57) || (key==46));
}
</script>

pero necesito que me permita un solo punto,y mis conocimientos estan mas que oxidados

alguien me ayuda????
  #2 (permalink)  
Antiguo 09/10/2008, 13:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: que permita solo un punto

Puedes usar el método indexOf() de la cadena para buscar un punto, y si lo hay, cancelar la acción del evento.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 09/10/2008, 13:33
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: que permita solo un punto

David el Grande, creo que la respuesta es muy abierta ya que si el usuario ingresa un punto estaria bien pero no debe dejar que ingrese otro, no obstante si el usuario lo borra debe volver a aceptarlo.....

seria cosa de un codigo en el evento keyprees y si encuentras el segundo le das un return para que no lo acepte y esto seria cada vez que lo escriba.

suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #4 (permalink)  
Antiguo 09/10/2008, 13:45
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: que permita solo un punto

Hola, masterojitos. No entendí lo que quisiste decir, ya que si usamos el indexOf() buscaremos en el value si hay un punto, si ya hay no permitiremos que ingrese, pero si lo borra, dejará de haber, por lo que ingresará, lógicamente, todo eso en el evento onkeypress.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 09/10/2008, 14:47
Avatar de foreverOdd  
Fecha de Ingreso: noviembre-2007
Ubicación: Caracas
Mensajes: 489
Antigüedad: 16 años, 5 meses
Puntos: 14
Respuesta: que permita solo un punto

Trata copn esta funcion a ver

function validar(e) {
tecla = (document.all)?e.keyCode:e.which;
if (tecla==8) return true;
patron = /^\d+\.{0,1}\d+$/;
te = String.fromCharCode(tecla);
return patron.test(te);
}
__________________
My path is lit by my own fire, I only go where I desire
  #6 (permalink)  
Antiguo 09/10/2008, 15:09
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: que permita solo un punto

No sé por qué pero me da la ligera impresión de que la función de foreverOdd no va a comprobar que no se repita el punto, ya que solo comprueba la tecla pulsada y no el value.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 09/10/2008, 15:29
Avatar de foreverOdd  
Fecha de Ingreso: noviembre-2007
Ubicación: Caracas
Mensajes: 489
Antigüedad: 16 años, 5 meses
Puntos: 14
Respuesta: que permita solo un punto

Quiza el joven solo quiere introducir un numero con decimal y lo esta validando en el momento incorrecto, igual espero que le sirva a alguien la funcion
__________________
My path is lit by my own fire, I only go where I desire
  #8 (permalink)  
Antiguo 10/10/2008, 01:01
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: que permita solo un punto

Hola a todos, se me ocurre esto:

<script language="JavaScript">
var nav4 = window.Event ? true : false;
var key46=false;
function acceptReal(evt){
var key = nav4 ? evt.which : evt.keyCode;
return ((key <= 13) || (key >= 48 && key <= 57) || (key==46 && !key46));
if(key=46){
key46=true;
}
}
</script>

Creo que con esto sólo se pondrá un punto. El problema de esto está en que el que escribe borre el contenido. Me parece que lo que propone David es lo más acertado:
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
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 11:04.