Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/09/2011, 11:41
Avatar de nolose
nolose
 
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 165
Antigüedad: 16 años, 4 meses
Puntos: 2
Problema con validacion Field

Hola a todos!!

Tengo un javascript que añade un Field al clicarle, que lo utilizo para subir varias imagenes a mi servidor, y funciona correctamente, os pongo el código a continuación:
(Código obtenido de http://www.buayacorp.com/archivos/en...l-estilo-gmail)

Código HTML:
var numero = 0;

// Funciones comunes
c= function (tag) { // Crea un elemento
   return document.createElement(tag);
}
d = function (id) { // Retorna un elemento en base al id
   return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
   return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
   return evt.srcElement ?  evt.srcElement : evt.target;
}

addField = function () {
	if(numero<9)
	{
	   container = d('files');
	   
	   span = c('SPAN');
	   span.className = 'file';
	   span.id = 'file' + (++numero);
	
	   field = c('INPUT');   
	   field.name = 'archivos[]';
	   field.type = 'file';
	   
	   a = c('A');
	   a.name = span.id;
	   a.href = '#ancla_insert';
	   a.onclick = removeField;
	   //a.classname = 'texto_azul_link';
	   a.innerHTML = ' Quitar';
	
	   span.appendChild(field);
	   span.appendChild(a);
	   container.appendChild(span);
	}
}
removeField = function (evt) {
   lnk = f(e(evt));
   span = d(lnk.name);
   span.parentNode.removeChild(span);
   
   numero--;
}
También tengo otro archivo .js, que se encarga de validar que cada uno de los Fields contenga la los caracteres “.jpg”, porque solo quiero que se suban al servidor imagenes con extensión .jpg...

Para ello estoy intentando utilizar (NO FUNCIONA):

Código HTML:
if(document.f1.getElementById(id).indexOf('.jpg') == -1)
{
También probe con (NO FUNCIONA):

Código HTML:
if(document.f1.archivos[0].value.indexOf('.jpg') == -1)
{
El caso es… que la validación no me funciona de ninguna de las maneras… ¿Sabríais cómo podría hacer para que funcionase??.
Gracias!!