Tengo un formulario en el cual necesito validar los campos y a la vez dependiendo de la opción elegida en el menú select me redirija a una u otra página. Ya armé los script sin embargo al momento de enviar el formulario, me sale el alert diciendo que un campo está vacio pero de todos modos lo envía. Supongo que se debe a que un botón no tolera 2 comportamientos (un submit y un onclick) o tal vez sí y lo estoy haciendo mal. ¿Alguna idea? Aquí está mi código:
Código HTML:
<script language=javascript>
function valida_envia(){
//valido la provincia
if (document.form1.select.value.length==0){
alert("Debe elegir provincia de alquiler")
document.form1.select.focus()
return 0;
}
//valido la zona
if (document.form1.select2.value.length==0){
alert("Debe elegir zona de alquiler")
document.form1.select2.focus()
return 0;
}
//valido el tipo de auto
if (document.form1.liste1.value.length==0){
alert("Debe seleccionar tipo de auto")
document.form1.liste1.focus()
return 0;
}
//valido la fecha de alquiler
if (document.form1.fechalq.value.length==0){
alert("Debe seleccionar fecha de alquiler")
document.form1.fechalq.focus()
return 0;
}
//valido la fecha de devolución
if (document.form1.fechdev.value.length==0){
alert("Debe seleccionar fecha de devolución.")
document.form1.fechdev.focus()
return 0;
}
//el formulario se envia
document.form1.submit();
}
</script>
<form action="grabafecha.php" method="post" name="form1" id="form1">
País
<select name="pais">
<option selected="selected" value="Argentina">Argentina</option>
<option>Resto del Mundo</option>
</select>
</p>
Zona
<select name="select" onchange="slctryole(this,this.form.select2)">
<option></option>
<option value="BuenosAires">Buenos Aires</option>
<option value="CapitalFederal">Capital Federal</option>
<option value="Chaco">Chaco</option>
</select>
<select name="select2" onchange="slctryole(this,this.form.select3)">
<option></option>
</select>
</p>
<p>
Devolver el auto en el mismo lugar <input name="devolucion" type="checkbox" id="devolucion" onclick="deshabilita(this.checked)" checked="checked">
<br /><select name="zonadev" id="zonadev">
<option></option>
<option value="BuenosAires">Buenos Aires</option>
<option value="CapitalFederal">Capital Federal</option>
<option value="Chaco">Chaco</option>
</select>
<div class="Estilo42" id="provincia" style="display:inline"></div>
<p class="Estilo42">Tipo de Auto
<select name="liste1">
<option selected="selected" value=""> </option>
<option value="compacto3.php">Compacto 3 puertas</option>
<option value="compacto5.php">Compacto 5 puertas</option>
<option value="intermedio.php">Intermedio</option>
<option value="mediano.php">Mediano</option>
<option value="grande.php">Grande</option>
<option value="lujo.php">Lujo - Premium</option>
<option value="pickup42.php">Pick Up (4x2)</option>
<option value="suv.php">SUV</option>
<option value="pickup44.php">Pick Up (4x4)</option>
<option value="van.php">Van – Minibús</option>
<option value="automatico.php">Automático</option>
<option value="blindado.php">Especial - Blindado</option>
</select>
</p>
<p class="Estilo42">Fecha de Alquiler
<input name="fechalq" class="date-pick" type="text" size="7" id="fechalq">
<p class="Estilo42">Fecha de Devolución
<input name="fechdev" class="date-pick" type="text" size="7" id="fechdev">
<p class="Estilo42">Kilometraje Diario <br />
<input type="radio" name="km" value="200" />
200 kms.
<input type="radio" name="km" value="400" />
400 kms
<input type="radio" name="km" value="I" />
Ilimitado </p>
<p class="Estilo42">Seguro<br />
<input type="radio" name="seguro" value="B" />
Básico
<input type="radio" name="seguro" value="C" />
Completo </p>
<p>
<span class="Estilo42">
<input name="submit" type="submit" value="Buscar" onclick="valida_envia()"/>
</span> </p>
</form>