Foros del Web » Programando para Internet » Javascript »

Problema Validar ARchivo

Estas en el tema de Problema Validar ARchivo en el foro de Javascript en Foros del Web. Hola wenas pues tengo el siguiente archivo: Cita: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> <title>Dar de alta poliza</title> <meta name="Author" content="Santiago Cordon Carmona" lang="ES"/> <script ...
  #1 (permalink)  
Antiguo 02/12/2012, 11:27
 
Fecha de Ingreso: noviembre-2012
Mensajes: 5
Antigüedad: 11 años, 5 meses
Puntos: 0
Problema Validar ARchivo

Hola wenas pues tengo el siguiente archivo:
Cita:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Dar de alta poliza</title>
<meta name="Author" content="Santiago Cordon Carmona" lang="ES"/>
<script type="text/javascript" src="validar.js"></script>
</head>
<body>
<?php
?>
<center><h1>ALTA POLIZA</h1></center>
<form action="anadir_guardar.php" method="get" name="form" id="form">
<table border="1" align="center" cellpadding="3" cellspacing="0">
<tr>
<td>Numero Poliza:</td>
<td><input type="text" name="numeropoliza" id="numeropoliza"/></td>
</tr>
<tr>
<td>DNI:</td>
<td><input type="text" maxlength="9" size="9" name="dni" id="dni"/></td>
</tr>
<tr>
<td>Direcci&oacute;n:</td>
<td><input type="text" name="direccion" maxlength="50" id="direccion"/></td>
</tr>
<tr>
<td>M2:</td>
<td><input type="text" name="m2" id="m2"/></td>
</tr>
<tr>
<td>Tipo:</td>
<td><select name="tipo" id="tipo">
<option name="piso" id="piso" value="piso">Piso</option>
<option name="chalet" id="chalet" value="chalet">Chalet</option>
<option name="adosado" id="adosado" value="adosado">Adosado</option>
</select></td>
</tr>
<tr>
<td>Uso:</td>
<td><select name="uso" id="uso">
<option name="alquilado" id="alquilado">Alquilado</option>
<option name="propio" id="propio">Propio</option>
</select></td>
</tr>
<tr>
<td>Valor continente:<br></td>
<td><input type="text" name="valorcontinente" id="valorcontinente"/></td>
</tr>
<tr>
<td>Valor contenido:<br></td>
<td><input type="text" name="valorcontenido" id="valorcontenido"/></td>

</tr>
<tr>
<td colspan="2">
<div align="center">
<input type="submit" name="enviar" id="botonenviar" onClick="validacion();" value="Enviar"/>
</div>
</td>
</tr>
</table>
</form>
<br><br><br><a href="index.php"><img src="boton_volver_atras.gif" border="0" title="Volver a inicio" alt="Volver a inicio"/></a><br><br>
</body>
</html>

Y este otro que es el que valida
Cita:
function validacion(){

if(document.form.dni.value.length==0){
alert('Introduce DNI');
document.form.dni.focus();
return 0;
}

tdni = /^\d{8}[a-zA-Z]$/;

if(tdni.test(form.dni.value)==false)
{
alert('DNI no válido, debe tener 8 números y letra');
document.form.dni.focus();
return false;
}

if(document.form.direccion.value.length==0){
alert('Introduce DNI');
document.form.direccion.focus();
return 0;
}

if(document.form.m2.value.length==0){
alert('Rellena los metros cuadrados');
document.form.m2.focus();
return 0;
}

if (isNaN(form.m2.value)) {
alert('El campo "metros cuadrados" debe tener sólo números.');
form.m2.focus();
return 0;
}

if(document.form.m2.value>500){
alert('Los M2 no pueden superar 500');
document.form.m2.focus();
return 0;
}

if (document.form.tipo.value=="vacio")
{
alert('Debes de poner un tipo de vivienda');
documento.form.tipo.focus();
return 0;
}

if (document.form.uso.value=="vacio")
{
alert('Debes poner el uso de vivienda');
documento.form.uso.focus();
return 0;
}

if(document.form.valorcontinente.value.length==0){
alert('Introduce el valor del continente');
document.form.valorcontinente.focus();
return 0;
}

if (isNaN(form.valorcontinente.value))
{
alert('El valor del continente solo puede ser números');
form.valorcontinente.focus();
return 0;
}

if(document.form.valorcontinente.value==0)
{
alert('El continente nunca puede tener como valor "0"');
document.form.valorcontinente.focus();
return 0;
}

if(document.form.valorcontenido.value.length==0){
alert('Introduce el valor del contenido');
document.form.valorcontenido.focus();
return 0;
}

if (isNaN(form.valorcontenido.value))
{
alert('El vaor del contenido solo puede ser números.');
form.valorcontenido.focus();
return 0;
}

if(document.form.valorcontenido.value==0){
alert('El contenido nunca puede tener como valor "0"');
document.form.valorcontenido.focus();
return 0;
}

valorcontinente2=document.form.valorcontinente.val ue;

if(document.form.valorcontenido.value>valorcontine nte2 * 0.3){
alert('El contenido no puede superar el 30% del continente ' + valorcontinente2 * 0.3);
document.form.valorcontenido.focus();
return 0;
}

document.form.submit();

}
Mi consulta es que al ejecutarlo por ejemplo pongo lo metros cuadrados(m2) en mas de 500 y no me salta ningun alert:(
  #2 (permalink)  
Antiguo 02/12/2012, 11:41
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Problema Validar ARchivo

Los valores recibidos desde un form siempre son tartados como cadenas por javascript. Cualquier operación aritmética que realices va a requerir que dicha cadena sea convertida en un número operable

si en tu campo ingresas 500 (lo que equivale a "500") tenes que
parseInt(variable valor del input), previo a cualquier < > + - , etc

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 02/12/2012, 11:57
 
Fecha de Ingreso: noviembre-2012
Mensajes: 5
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Problema Validar ARchivo

perdona k te moleste entonces kedaria asi???

if(parseInt(document.form.m2.value>500))
{
alert('Los M2 no pueden superar 500');
document.form.m2.focus();
return 0;
}
  #4 (permalink)  
Antiguo 02/12/2012, 12:14
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Problema Validar ARchivo

var nuevoValor = parseInt(document.form.m2.value);

luego usás nuevoValor en la operación
if(nuevoValor >500){
//.......
}
te advierto que no revisé toda tu script, me detuve en el error que mencionaste

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 02/12/2012, 12:28
 
Fecha de Ingreso: noviembre-2012
Mensajes: 5
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Problema Validar ARchivo

Mira lo deje asi pero no m tira aun no m salta el alert
if(document.form.m2.value.length==0){
alert('Rellena los metros cuadrados');
document.form.m2.focus();
return 0;
}

var nuevoValor = parseInt(document.form.m2.value)

if(nuevoValor>500){
alert('Los M2 no pueden superar 500');
document.form.m2.focus();
return 0;
}
  #6 (permalink)  
Antiguo 02/12/2012, 12:39
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Problema Validar ARchivo

lo que tenés que hacer es revisar todo y utilizar el evento onsubmit en el form, no validar con el onclick

Podés hacer algo asi
http://www.forosdelweb.com/f13/como-...3/#post4284386

ó asi
http://www.forosdelweb.com/f13/valid...3/#post4213498

pero fijate como se llama la validación en ambos casos, onsubmit="return validar()"
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: html, input, js, php
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 13:26.