Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/06/2006, 09:34
sergi_climent
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
validar formulario sin onsubmit

Hola,
tengo la siguiente funcion para validar un formulario...
lo q me gustaria es q esa funcion comprobara los campos de mi formulario, y en caso de dsipararse alguna condicion se saliera de la funcion, lo he probado de la siguiente manera pero no me funciona.
Código HTML:
function validatraspas(miform){

	var data = miform.dc.value;
	var article = miform.article.value;
	var magatzemorigen = miform.magatzemorigen.value;
	var magatzemdesti = miform.magatzemdesti.value;
	var quantitat = miform.quantitat.value;
	
	if (data==''){
		alert("Tienes que escojer una Fecha.");
		break;
	}else if (article==0){
		alert("Tienes que escojer un tipo de caja.");
		break;
	}else if (magatzemorigen==0){
		alert("Tienes que escojer un Almacen Origen.");
		break;
	}else if (magatzemdesti==0){
		alert("Tienes que escojer un Almacen Destino.");
		break;
	}else if (quantitat==0){
		alert("Tienes que definir una cantidad.");
		break;
	}else if (magatzemorigen == magatzemdesti){
		alert("No puedes escojer el mismo almacen.");
		break;
	}else {
		myajax.Form('miform', 'main');
	}

}
y el formulario el siguiente:
Código HTML:
<form id="miform" method="post" action="traspas/act_ins.php">
<DIV id=popCal style="BORDER-RIGHT: 2px ridge; BORDER-TOP: 2px ridge; Z-INDEX: 100; VISIBILITY: hidden; BORDER-LEFT: 2px ridge; WIDTH: 10px; BORDER-BOTTOM: 2px ridge; POSITION: absolute" 
onclick=event.cancelBubble=true><IFRAME name=popFrame 
 src="calendario/calendari.php"
frameBorder=0 width=183 scrolling=no height=188></IFRAME></DIV>
<SCRIPT event=onclick() 
for=document>popCal.style.visibility = "hidden";</SCRIPT>
<table align="center"  border="1">
<tr><td width="70%">
<table align="center">
<tr><td align="center" class="titol" colspan="2">Traspasos</td></tr>
<tr><td colspan="2">&nbsp;</td></tr>
<tr>
	<td class="lletra">&nbsp;Fecha</td>
	<td><INPUT class="caixes" readOnly name="dc" size="20">&nbsp;<img src="img/calendari.gif" width="20" onclick="popFrame.fPopCalendar(dc,dc,popCal);return false"></td>
</tr>
<tr>
	<td class="lletra">&nbsp;Tipo de Caja</td>
	<td>
		<select name="article" class="caixes" onchange="myajax.Link('traspas/cons_stock.php?article='+this.value, 'stock_actual')">
			<option value="0">Tipo de caja...</option>
			<?
			while($res_article=mysql_fetch_row($sql_article)){
				echo "<option value=".$res_article[0].">".$res_article[1]."</option>";
			}
			?>
		</select>
	</td>
</tr>
<tr>
	<td class="lletra">&nbsp;Almacen Origen</td>
	<td>
		<select name="magatzemorigen" class="caixes">
			<option value="0">Almacen Origen...</option>
			<?
			while($res_magatzem=mysql_fetch_row($sql_magatzem)){
				echo "<option value=".$res_magatzem[0].">".$res_magatzem[1]."</option>";
			}
			?>
		</select>
	</td>
</tr>
<tr>
	<td class="lletra">&nbsp;Almacen Destino</td>
	<td>
		<select name="magatzemdesti" class="caixes">
			<option value="0">Almacen Destino...</option>
			<?
			while($res_magatzem2=mysql_fetch_row($sql_magatzem2)){
				echo "<option value=".$res_magatzem2[0].">".$res_magatzem2[1]."</option>";
			}
			?>
		</select>
	</td>
</tr>
<tr>
	<td class="lletra">&nbsp;Cantidad</td>
	<td><input type="text" name="quantitat" class="caixes" align="right"/></td>

</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td align="right">
<input type="submit" class="boto" name="envia" value="Grabar" onClick="javascript:validatraspas(this.form)">
</td>
<td align="left">
<input type="button" class="boto" name="cancelar"  value="Cancelar" onclick="myajax.Link('#traspas/default.php', 'main')">
</td>
</tr>
</table>
</td>
<td width="30%">
<table>
<tr><td width="30%" align="center" valign="middle"><div id="stock_actual" align="center"></div></td></tr>	
</table>
</td>
</tr>
</table>
</form> 
Gracias por cualquier solucion q puedan ofrecerme...

Saludos
supongo q debe ser el break; porque si lo quito me van saliendo los alerts pero no sale nunca de la funcion y da por buneo el formulario.
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier