Foros del Web » Programando para Internet » Javascript »

validación

Estas en el tema de validación en el foro de Javascript en Foros del Web. Hola, Quiero validar un formulario, son tres campos uno de texto, y los otros dos son select Quiero que si los dejan en blanco muestre ...
  #1 (permalink)  
Antiguo 17/01/2007, 07:25
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
validación

Hola,
Quiero validar un formulario, son tres campos
uno de texto, y los otros dos son select
Quiero que si los dejan en blanco muestre un mensaje de alerta, pero si alguno tiene algun valor entonces continue.
He probado con esta función, pero aunque escriba en elgún criterio me sigue mostrando el alert.


function valida_envia(){
if ((document.cerca.text_titol.value.length==0) || (document.cerca.var_tipologia.value.length==0) || (document.cerca.var_poblacio.value.length==0)) {
alert("Ha de introducir algún criterio de búsqueda");
document.cerca.text_titol.focus()
return false;
}
}

Saludos y mil gracias anicipadas
  #2 (permalink)  
Antiguo 17/01/2007, 07:45
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: validación

Qué tal promedea,

value.length sólo te sirve en este caso para el campo de texto pero no así para los selectores.

Usa campo.selectedIndex <= 0 a ver qué tal

Código:
(document.cerca.text_titol.value.length==0) || (document.cerca.var_tipologia.selectedIndex <= 0) || (document.cerca.var_poblacio.selectedIndex <= 0)
Un saludo
  #3 (permalink)  
Antiguo 17/01/2007, 07:59
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
Re: validación

Lo siento he probado y sigue sin funcionar.
Alguna otra idea?
  #4 (permalink)  
Antiguo 17/01/2007, 08:02
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
Re: validación

Oh, oh,
Me he equivocado, no son select, son menu desplegable, por lo tanto
<option>
Espero que esto aclare algo.
  #5 (permalink)  
Antiguo 17/01/2007, 08:12
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: validación

Déjame también el código del formulario con estos campos
  #6 (permalink)  
Antiguo 17/01/2007, 08:31
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
Re: validación

Ahí va, es un poco largo, pero ...



[HTML]
<td height="220"><table width="760">
<td height="151" valign="top"><form id="cerca" name="cerca" action="resul_avancada.php" method="post" onSubmit="return valida_envia()">
<fieldset>
<legend>Cerca avanzada</legend>
<table width="600" border="0" align="center">
<tr>
<td width="150">&nbsp;</td>
<td colspan="3">&nbsp;</td>
</tr>
<tr>
<td class="text">Cerca per títol</td>
<td colspan="2" class="text"><input id="text_titol" name="text_titol" type="text" size="50" maxlength="100">
</td>
<td class="text"><strong>Y</strong></td>
</tr>
<tr>
<td class="text">Cercar per tipologia </td>
<td colspan="2" class="text"><select name="var_tipologia" size="1">
<option value="0"></option>
<option value="1">Contes Meravellosos</option>
<option value="2">Contes no Meravellosos</option>
<option value="3">Contes Animal&iacute;stics</option>
<option value="4">Contes Encadenats</option>
<option value="5">Apòlegs</option>
<option value="6">Tradicions</option>
<option value="7">Bertranades</option>
<option value="8">Rondalles</option>
<option value="9">Antirondalles</option>
<option value="10">Facècies</option>
<option value="11">Llegendes</option>
<option value="12">Història Oral</option>
<option value="13">Teatre</option>
<option value="14">Cançons Infantils</option>
<option value="15">Jocs d'Infants</option>
<option value="16">Folies</option>
<option value="17">Romanços</option>
<option value="18">Tirallongues Toponímiques</option>
<option value="19">Oracions i Cançons Religioses</option>
<option value="20">Cançons de Ball</option>
<option value="21">Refranyer</option>
<option value="22">Enigmística</option>
<option value="23">Mimologia</option>
<option value="24">Tornaveus</option>
<option value="25">Embarbussaments</option>
<option value="26">Enganyalls</option>
<option value="27">Frases Fetes i Locucions</option>
<option value="28">Altres Composicions</option>
</select></td>
<td class="text"><strong>Y</strong></td>
</tr>
<tr>
<td class="text">Cercar por poblaci&oacute;</td>
<td colspan="2"><select name="var_poblacio" size="1">
<option value="0"></option>
<option value="1">Aiguaviva</option>
<option value="2">Arenys de Lledo</option>
<option value="3">Bellmunt de Mesqu&iacute;</option>
<option value="4">Beseit</option>
<option value="5">La Canyada de Beric</option>
<option value="6">Calaceit</option>
<option value="7">La Codonyera</option>
<option value="8">Cretes</option>
<option value="9">Fai&oacute;</option>
<option value="10">Favara de Matarranya</option>
<option value="11">Fontdespatla</option>
<option value="12">F&oacute;rnols</option>
<option value="13">La Freixneda</option>
<option value="14">La Ginebrosa</option>
<option value="15">Herbers</option>
<option value="16">Lled&oacute;</option>
<option value="17">Maella</option>
<option value="18">El Mas de Llaurador</option>
<option value="19">Massali&oacute;</option>
<option value="20">Mequinensa</option>
<option value="21">Mont-roig</option>
<option value="22">Nonasp</option>
<option value="23">La Pobleta de Morella</option>
<option value="24">La Portellada</option>
<option value="25">Pena-roja</option>
<option value="26">R&agrave;fels</option>
<option value="27">La Sorollera</option>
<option value="28">Torredarques</option>
<option value="29">La Torre del Compte</option>
<option value="30">La Torre de Vilella</option>
<option value="31">Valljunquera</option>
<option value="32">La Vall del Tormo</option>
<option value="33">Vall-de-roures</option>
</select></td>
<td>&nbsp;</td>
</tr>
<tr>
<td class="text">&nbsp;</td>
<td width="155"><input type="submit" name="Submit" value="Cercar"></td>
<td width="155"><input type="reset" name="Submit2" value="Esborrar"></td>
<td width="124">&nbsp;</td>
</tr>
</table>
</fieldset>
</form>
[HTML]
  #7 (permalink)  
Antiguo 17/01/2007, 08:42
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: validación

Pues sí que valida, pruebalo

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
function valida_envia(){
if ((document.cerca.text_titol.value.length==0) || (document.cerca.var_tipologia.value.selectedIndex <= 0) || (document.cerca.var_poblacio.selectedIndex <= 0)) {
alert("Ha de introducir algún criterio de búsqueda");
document.cerca.text_titol.focus()
return false;
}
}
</script>
</head>

<body>
<td height="220"><table width="760">
<td height="151" valign="top"><form id="cerca" name="cerca" action="resul_avancada.php" method="post" onSubmit="return valida_envia()">
<fieldset>
<legend>Cerca avanzada</legend>
<table width="600" border="0" align="center">
<tr>
<td width="150">&nbsp;</td>
<td colspan="3">&nbsp;</td>
</tr>
<tr>
<td class="text">Cerca per títol</td>
<td colspan="2" class="text"><input id="text_titol" name="text_titol" type="text" size="50" maxlength="100">
</td>
<td class="text"><strong>Y</strong></td>
</tr>
<tr>
<td class="text">Cercar per tipologia </td>
<td colspan="2" class="text"><select name="var_tipologia" size="1">
<option value="0"></option>
<option value="1">Contes Meravellosos</option>
<option value="2">Contes no Meravellosos</option>
<option value="3">Contes Animal&iacute;stics</option>
<option value="4">Contes Encadenats</option>
<option value="5">Apòlegs</option>
<option value="6">Tradicions</option>
<option value="7">Bertranades</option>
<option value="8">Rondalles</option>
<option value="9">Antirondalles</option>
<option value="10">Facècies</option>
<option value="11">Llegendes</option>
<option value="12">Història Oral</option>
<option value="13">Teatre</option>
<option value="14">Cançons Infantils</option>
<option value="15">Jocs d'Infants</option>
<option value="16">Folies</option>
<option value="17">Romanços</option>
<option value="18">Tirallongues Toponímiques</option>
<option value="19">Oracions i Cançons Religioses</option>
<option value="20">Cançons de Ball</option>
<option value="21">Refranyer</option>
<option value="22">Enigmística</option>
<option value="23">Mimologia</option>
<option value="24">Tornaveus</option>
<option value="25">Embarbussaments</option>
<option value="26">Enganyalls</option>
<option value="27">Frases Fetes i Locucions</option>
<option value="28">Altres Composicions</option>
</select></td>
<td class="text"><strong>Y</strong></td>
</tr>
<tr>
<td class="text">Cercar por poblaci&oacute;</td>
<td colspan="2"><select name="var_poblacio" size="1">
<option value="0"></option>
<option value="1">Aiguaviva</option>
<option value="2">Arenys de Lledo</option>
<option value="3">Bellmunt de Mesqu&iacute;</option>
<option value="4">Beseit</option>
<option value="5">La Canyada de Beric</option>
<option value="6">Calaceit</option>
<option value="7">La Codonyera</option>
<option value="8">Cretes</option>
<option value="9">Fai&oacute;</option>
<option value="10">Favara de Matarranya</option>
<option value="11">Fontdespatla</option>
<option value="12">F&oacute;rnols</option>
<option value="13">La Freixneda</option>
<option value="14">La Ginebrosa</option>
<option value="15">Herbers</option>
<option value="16">Lled&oacute;</option>
<option value="17">Maella</option>
<option value="18">El Mas de Llaurador</option>
<option value="19">Massali&oacute;</option>
<option value="20">Mequinensa</option>
<option value="21">Mont-roig</option>
<option value="22">Nonasp</option>
<option value="23">La Pobleta de Morella</option>
<option value="24">La Portellada</option>
<option value="25">Pena-roja</option>
<option value="26">R&agrave;fels</option>
<option value="27">La Sorollera</option>
<option value="28">Torredarques</option>
<option value="29">La Torre del Compte</option>
<option value="30">La Torre de Vilella</option>
<option value="31">Valljunquera</option>
<option value="32">La Vall del Tormo</option>
<option value="33">Vall-de-roures</option>
</select></td>
<td>&nbsp;</td>
</tr>
<tr>
<td class="text">&nbsp;</td>
<td width="155"><input type="submit" name="Submit" value="Cercar"></td>
<td width="155"><input type="reset" name="Submit2" value="Esborrar"></td>
<td width="124">&nbsp;</td>
</tr>
</table>
</fieldset>
</form>
</body>
</html>
  #8 (permalink)  
Antiguo 17/01/2007, 10:08
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
Re: validación

Quizás no me he explicado bien.
Quiero que valide si y sólo si se dejan los tres campos en blanco.
Si alguno de ellos tiene valor entonces darlo como bueno.
  #9 (permalink)  
Antiguo 17/01/2007, 10:14
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: validación

Entonces debes cambiar los || por &&

un saludo
  #10 (permalink)  
Antiguo 17/01/2007, 10:35
 
Fecha de Ingreso: abril-2004
Mensajes: 58
Antigüedad: 20 años
Puntos: 0
Re: validación

Muchisimas gracias por la pronta respuesta
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 21:44.