Foros del Web » Programando para Internet » Javascript »

comprobar que el texto introducido existe en un array

Estas en el tema de comprobar que el texto introducido existe en un array en el foro de Javascript en Foros del Web. Hola a todos, a ver si me pueden echar una mano que me quedado un poco atascada. Tengo un formulario en el que hay que ...
  #1 (permalink)  
Antiguo 25/09/2009, 02:56
pbt
 
Fecha de Ingreso: marzo-2009
Mensajes: 49
Antigüedad: 15 años, 2 meses
Puntos: 0
comprobar que el texto introducido existe en un array

Hola a todos, a ver si me pueden echar una mano que me quedado un poco atascada.
Tengo un formulario en el que hay que introducir un texto y con un onchange compruebo que ese texto exista en un array, y necesito que solo en el caso de que exista me deje seguir rellenando el formulario y si no existe me de un alert.
El codigo q tengo no me vale porque lo que me hace es recorrerme las posiciones una a una y me esta sacando el alert hasta que lo encuentra, pero yo necesito que me compruebe las posiciones y solo si no existe me saque el alert, y no me lo este sacando todo el rato.
Pero es que debo estar espesa porque no atino con el codigo correcto.
Espero haberme explicado bien, gracias
Código:
function ComprobarCodigo(cod)
{
codigos = new Array ('c', 'b', '5');
for(i=0; i<=codigos.length; i++)
	{
	if(codigos[i] == cod.value)
		{return true;}
	else
		{alert('Codigo introducido no valido');return false;}
	}
}

Última edición por pbt; 25/09/2009 a las 03:04
  #2 (permalink)  
Antiguo 25/09/2009, 04:44
 
Fecha de Ingreso: mayo-2009
Mensajes: 201
Antigüedad: 15 años
Puntos: 9
Respuesta: comprobar que el texto introducido existe en un array

yo cambiaria alguna cosa:

para empezar me da la sensacion de que lo que quieres es que salga el alert cuando son iguales, y en tu if haces todo lo contrario:

if(codigos[i] == cod.value) --------> if(codigos[i] != cod.value)
{return true;}
else
{alert('Codigo introducido no valido');return false;}
}

y una pregunta, el codigo es solo de una letra? me puedes dar ejemplos de introducciones que deberian pasar la validacion y ejemplos que no deberian pasarla?
  #3 (permalink)  
Antiguo 25/09/2009, 09:09
pbt
 
Fecha de Ingreso: marzo-2009
Mensajes: 49
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: comprobar que el texto introducido existe en un array

Lo que quiero es que me mire si existe la cadena en el array y solamente si no existe me saque el alert. En mi codigo saca el alert cada vez que avanza una posicion en el array y no coincide con la cadena por lo que si la cadena que busco esta en la ultima posicion me saca todos los alert hasta encontrarla, y eso no es lo que quiero
  #4 (permalink)  
Antiguo 25/09/2009, 09:53
 
Fecha de Ingreso: mayo-2009
Mensajes: 201
Antigüedad: 15 años
Puntos: 9
Respuesta: comprobar que el texto introducido existe en un array

has puesto la condicion if al reves, como te aclare en mi anterior post. lo has corregido?

en vez de == tiene que ser !=
  #5 (permalink)  
Antiguo 25/09/2009, 09:55
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 5 meses
Puntos: 56
Respuesta: comprobar que el texto introducido existe en un array

y el break después del alert?
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #6 (permalink)  
Antiguo 25/09/2009, 15:21
pbt
 
Fecha de Ingreso: marzo-2009
Mensajes: 49
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: comprobar que el texto introducido existe en un array

Cita:
Iniciado por monxas Ver Mensaje
has puesto la condicion if al reves, como te aclare en mi anterior post. lo has corregido?

en vez de == tiene que ser !=
Si pongo eso me saca el error cuando coinciden
  #7 (permalink)  
Antiguo 25/09/2009, 18:18
 
Fecha de Ingreso: mayo-2009
Mensajes: 201
Antigüedad: 15 años
Puntos: 9
Respuesta: comprobar que el texto introducido existe en un array

ahora entendi lo que quieres!

tienes que poner un contador:

function ComprobarCodigo(cod)
{
comprobarcod = 0;
codigos = new Array ('c', 'b', '5');
for(i=0; i<=codigos.length; i++)
{
if(codigos[i] == cod.value)
{comprobarcod = comprobarcod +1 ;}
}
if (comprobarcod == 0)
{alert('Codigo introducido no valido');return false;}
else
{return true;}
}
  #8 (permalink)  
Antiguo 26/09/2009, 09:15
pbt
 
Fecha de Ingreso: marzo-2009
Mensajes: 49
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: comprobar que el texto introducido existe en un array

Muchas gracias por las molestias, al final lo acabe haciendo con php que si tenia la funcion que necesitaba y era más seguro
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 10:29.