function validarFormulario(idForm) {
	var manda = true;
	var elForm = document.getElementById(idForm);
	for (var i = 0; i < elForm.childNodes.length; i++){
		if(elForm.childNodes[i].nodeName =="LABEL"){
				var elemento = document.getElementById(elForm.childNodes[i].htmlFor);
				if ((elemento != null) || (elemento !=undefined)){
					if((elemento.alt != null) || (elemento.alt !=undefined)){
						var validaciones = elemento.alt.split("-");
						for (var t = 0; t <= validaciones.length -1; t++){
							switch(validaciones[t]){
								case "req": //requerido
									estado= requerido(elemento.id);
									break;
								case "le": // letras
									estado= letras(elemento.id);
									break;
								case "nr": // numeros
									estado= numerico(elemento.id);
									break;
								case "alfa": // numeros
									estado= alfanumerico(elemento.id);
									break;
								case "email": // numeros
									estado= email(elemento.id);
									break;
								case "fecha": // numeros
									estado= fecha(elemento.id);
									break;
								case "combo": // numeros
									estado= combo(elemento.id);
									break;
								}								
							if (estado == false){
								elemento.style.backgroundPosition = "left bottom";
							}
							if ((manda == true) && (estado==false)){ 
								manda= false;
							}
						}
					}
				}
		}
	}
		
	if (manda) {
		//alert("Bien");
		// desactivar el boton
		//document.form.submit(); 
		return true;
	}else{
		alert("!!! Formulario incompleto o datos erroneos.");
		return false;
	}
}

function requerido(idElemento){
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	if ((campo.value.length==0 || campo.value.length ==undefined) &&   campo.style.visibility!='hidden') {
		return false;
	} else {
		return true;
	}
}
function combo(idElemento){
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	if (campo.value.length==0 || campo.value.length ==undefined || campo.value==0) {
		return false;
	} else {
		return true;
	}
}

function letras (idElemento) {
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	var charpos = campo.value.search("[^A-Za-z ]"); 
	if(campo.value.length > 0 &&  charpos >= 0) { 
		return false; 
	} else {
		return true;
	}
}
 
 
function numerico(idElemento) {
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	var charpos = campo.value.search("[^0-9]"); 
    if (campo.value.length > 0 &&  charpos >= 0)  { 
	    return false; 
	} else {
		return true;
	}
}
function fecha(idElemento) {
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	var charpos = campo.value.search("[^0-9/]"); 
    if (campo.value.length != 10 &&  charpos >= 0)  { 
	    return false; 
	} else {
		return true;
	}
} 
function alfanumerico(idElemento){ 
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	var charpos = campo.value.search("[A-Za-z0-9_]"); 
	if(campo.value.length > 0 &&  charpos > 0) { 
		return false; 
	} else {
		return true;
	}
}
function email(idElemento){ 
	var campo = document.getElementById(idElemento);
	campo.value= trim(campo.value);
	var charpos = campo.value.search("[^A-Za-z0-9.-_@]"); 
	if(campo.value.length > 0 &&  charpos >= 0) { 
		return false; 
	} else {
		return true;
	}
}
function trim (string) {
	return string.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}