Foros del Web » Programando para Internet » Javascript »

duda con strings

Estas en el tema de duda con strings en el foro de Javascript en Foros del Web. hola a todos tengo este codigo: Código PHP: if ( checkStr . length == 2 ) { formulario . nota . value = checkStr . charAt ...
  #1 (permalink)  
Antiguo 03/10/2007, 12:06
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
duda con strings

hola a todos tengo este codigo:


Código PHP:
if (checkStr.length==2)
{
formulario.nota.value=checkStr.charAt(0)+('.')+checkStr.charAt(1);
formulario.nota.value=checkStr.split('').join('.');
        

esto basicamamente ase que cuando en un text ingreso 44 , aparece 4.4

al colocar el foco nuevamante el la casilla me aparece 4..4 y eso es lo que quiero evitar
puse esto :

Código PHP:
formulario.nota.value=checkStr.split('').join('.'); 
pero parece que no sirve mucho, no se de que manera puedo realizar lo que quiero... gracias
__________________
Los que Saben....no Saben lo que Saben
  #2 (permalink)  
Antiguo 03/10/2007, 12:54
Avatar de m4xp0wer  
Fecha de Ingreso: septiembre-2007
Mensajes: 66
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: duda con strings

yo lo que haría sería primero mirar si hay algún punto en el cuadro de texto, de la siguiente forma
Código:
if (checkStr.indexOf('.')!=-1)
{
formulario.nota.value=checkStr.charAt(0)+('.')+checkStr.charAt(1); 
}
  #3 (permalink)  
Antiguo 03/10/2007, 13:53
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

ahh ya..esque no resulta eso porque yo lo que quiero es poder ingresar 2 numeros y que aparesca el punto decimal....pero al colocar el foco ay que no se coloque otra ves el punto,,,

no me sirvio tu respuesta ..gracias abra otra cosa para que aparesca e lpunto decimal...o otra respuesta te lo agradesco
__________________
Los que Saben....no Saben lo que Saben
  #4 (permalink)  
Antiguo 04/10/2007, 08:05
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

algien que enga ora auda por favor es muy necesario
__________________
Los que Saben....no Saben lo que Saben
  #5 (permalink)  
Antiguo 04/10/2007, 10:04
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

hola ....trate de hacer esto:

Código PHP:
if (checkStr.length==2)
{
formulario.nota.value=checkStr.charAt(0)+('.')+checkStr.charAt(1);
formulario.nota.value.replace(/./,"");
            


pero tampoco me funciona con lo que quiero hacrer..alguna ayuda por favor gracias a todos
__________________
Los que Saben....no Saben lo que Saben
  #6 (permalink)  
Antiguo 04/10/2007, 11:20
Avatar de m4xp0wer  
Fecha de Ingreso: septiembre-2007
Mensajes: 66
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: duda con strings

Prueba con las funciones de formato de números de esta página, a ver si te sirven...
http://javascript.espaciolatino.com/...ormateanum.htm
  #7 (permalink)  
Antiguo 04/10/2007, 13:03
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

si algo sirve pero he sacado alg ode codigo y ya lo e probado y no resulta ...por eso, necesito saber si algien lo puede lograr....

no se si tu puedes gracias igual por responder
__________________
Los que Saben....no Saben lo que Saben
  #8 (permalink)  
Antiguo 04/10/2007, 13:28
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Re: duda con strings

En el momento en el que la longitud del valor es distinta a 2 no dería ejecutar la sentencia así que el problema te debe venir porque interpreta que siempre se cumple la condición

¿qué te devuelve checkStr.length?
  #9 (permalink)  
Antiguo 04/10/2007, 14:17
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

ola ....me estas diciendo que cree un sentencia if con el valor distinto a 2??

voy a probarlo.....

la cadena me devuelve el largo de la cadena si el largo es 2 y la cadena vale 45 me devuelve 4.5

y al poner otra ves el cursor en el text me devuelve 4..5 y eso es lo que no quiero que entrege 4..5, bueno gracias por tu ayuda ...ojala me ayudes mas ..
__________________
Los que Saben....no Saben lo que Saben
  #10 (permalink)  
Antiguo 05/10/2007, 01:59
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Re: duda con strings

No, me refiero a que si el valor es 45 su length es igual a dos, por lo tanto se cumple la condición y entra a ejecutar las sentencias. La siguiente vez que pones el cursor, si el valor es 4.5 su length no es igual a dos, por lo tanto no debería entrar a ejecutar de nuevo las sentencias. Eso te indica que la condición que has puesto no es correcta, dado que devuelve true tanto cuando el length es 2 como cuando es 3.

Por eso te sugerí que averigues lo que devuelve checkStr.length cada vez que se ejecuta el script. Pídele un alert(checkStr.length)

saludos
  #11 (permalink)  
Antiguo 05/10/2007, 11:40
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años
Puntos: 0
Re: duda con strings

ya ok....pero yo se que esta mala la validacion pero a ti se te ocurre otra forma de validar como para obtener lo que yo deceo??

gracias
__________________
Los que Saben....no Saben lo que Saben
  #12 (permalink)  
Antiguo 05/10/2007, 19:00
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: duda con strings

Hola natashca:


Creo que nos vas a tener que especificar mejor:
Cita:
esque no resulta eso porque yo lo que quiero es poder ingresar 2 numeros y que aparesca el punto decimal....pero al colocar el foco ay que no se coloque otra ves el punto
Yo creo que tal y como te decía tunait está todo lógicamente montado y tendría que funcionar. También funcionaría con comparación de patrones:

Código PHP:
<input type="text" onkeyup="puntua(this)" />

<
script type="text/javascript">
<!--

function 
puntua(laCaja) {
    var 
cifras laCaja.value.match( /^(d)(d)$/ );
    if( 
cifras != null ) {        // Si ha encontrado el patron
        // TODO - cifras[0]
        // PRIMERA CIFRA - cifras[1]
        // SEGUNDA CIFRA - cifras[2]
        
laCaja.value cifras[1] + "." cifras[2];
    }
}

// -->
</script> 
Si existe el patrón número + número ponemos un punto en medio...


Si no te funciona eso intenta explicarte mejor por favor.



Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 02:00.