Foros del Web » Programando para Internet » Javascript »

Pasar un formulario como parametro

Estas en el tema de Pasar un formulario como parametro en el foro de Javascript en Foros del Web. Haber quiero validar un campo de archivo de un formulario, para eso quiero comprobar que el nombre del archivo no tiene caracteres raros o espacios, ...
  #1 (permalink)  
Antiguo 10/04/2008, 04:28
 
Fecha de Ingreso: febrero-2008
Mensajes: 11
Antigüedad: 16 años, 9 meses
Puntos: 0
Pasar un formulario como parametro

Haber quiero validar un campo de archivo de un formulario, para eso quiero comprobar que el nombre del archivo no tiene caracteres raros o espacios, y que es un formato de archivo valido.
Para eso utilizo validaTexto(archivo) que comprueba el texto del campo que le pasamos como parametro (archivo) usando una expresion regular.
Despues uso la funcion LimitAttach(archivo,n) que esta en el FAQ de javascript.
La funcion queda asi:
Cita:
function validaArchivo(archivo, n){
var ok = true;
if(validaTexto(archivo)){
ok = false; // comprobar devuelve true si hay error.
}
if(LimitAttach(archivo,n)){
ok = false; // comprobar devuelve true si hay error.
}
return ok;
}
Y el formulario es asi:
Cita:
<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
<table width="100%" border="0" bgcolor="#CCFF99">
<tr>
<td>Insertar Imagen</td>
<td><label>
<input name="imagenes" type="file" id="imagenes" size="60" onblur="validaArchivo(imagenes,1)" />
</label>
<label></label></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="addImg" id="addImg" value="Enviar" /></td>
</tr>
</table>
</form>
Resultado: no funciona, las funciones estan bien, en otras pruebas han funcionado por separado, y creo que puede ser algo del paso de parametros. Tengo problemas similares en otras funciones de validacion y creo que se me escapa algo.

Habre si alguien puede darme alguna pista. Un saludo.
  #2 (permalink)  
Antiguo 10/04/2008, 06:17
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Re: Pasar un formulario como parametro

Cita:
<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
<table width="100%" border="0" bgcolor="#CCFF99">
<tr>
<td>Insertar Imagen</td>
<td><label>
<input name="imagenes" type="file" id="imagenes" size="60" onblur="validaArchivo(this,1)" />
</label>
<label></label></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="addImg" id="addImg" value="Enviar" /></td>
</tr>
</table>
</form>
deberia ser algo asi, no estoy seguro

Cita:
function validaArchivo(archivo, n){
var ok = true;
if(validaTexto(archivo.name)){
ok = false; // comprobar devuelve true si hay error.
}
if(LimitAttach(archivo.value,n)){
ok = false; // comprobar devuelve true si hay error.
}
return ok;
}
Tienes que respetar el tipo del parametro que espera cada funcion, si partes de un input tipo file ... por logica validaTexto valida un texto porlo esperara un texto, LimitAttach valida el fichero... esta podria funcionar tambien con el nombre del fichero (con su dirección completa) depende de como este programada...


Quim
  #3 (permalink)  
Antiguo 10/04/2008, 12:11
 
Fecha de Ingreso: febrero-2008
Mensajes: 11
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Pasar un formulario como parametro

Muchas gracias. Ahora entiendo porque no me funcionaba y creo que con esto podre solucionar problemas que tenia en otras validaciones.
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 18:24.