function validar(nomFormulari){			//Escollir validacio mitjançant un atribut fictici anomenat "tipusVal"
	var validat=true;
	var numEl=nomFormulari.elements.length;
	for(i=0;i<numEl;i++){
		var elem=nomFormulari.elements[i];
		var estilOriginal=elem.className;
		var estilErrorText="textErrorVal";
		var estilErrorCaixa="errorCaixaText";
		if(elem.type=="text" || elem.type=="textarea"){	//A partir d'aqui tipus de validacions, aqui es comprova que el camp a comprovar es de tipus text
			if(elem.id!=''){
				if($("#"+elem.id).attr("tipusVal")!=undefined){
					if($("#"+elem.id).attr("tipusVal")=="noBuit"){
						if(elem.value==""){			//Es buit, es crea el missatge d'error dinamicament
							validat=false;
							if(document.getElementById("error"+elem.id)==null){
								var elemPare=elem.parentNode;
								var divError=document.createElement("div");
								divError.id="error"+elem.id;
								divError.innerHTML="Aquest camp no pot estar buit";
								divError.className=estilErrorText;
								elemPare.appendChild(divError);
								//elem.style.borderColor='red';
								$(elem).addClass('ui-state-error'); 
								elem.focus();
							}
						}else{			//No es buit, es comprova si hi havia missatge d'error, i si n'hi havia s'elimina
							if (document.getElementById("error"+elem.id) != undefined){
								//elem.style.borderColor="";
								$(elem).removeClass('ui-state-error'); 	
								$(elem).addClass('ui-state-default'); 
								var divError=document.getElementById("error"+elem.id);
								var elemPare=elem.parentNode;
								elemPare.removeChild(divError);
							}
						}
					}
					if($("#"+elem.id).attr("tipusVal")=="email"){
						var patroVal=/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
						if(!elem.value.match(patroVal)){			//No es un email, es crea el missatge d'error dinamicament
							validat=false;
							if(document.getElementById("error"+elem.id)==null){
								var elemPare=elem.parentNode;
								var divError=document.createElement("div");
								divError.id="error"+elem.id;
								divError.innerHTML="Aquest camp ha de ser un email";
								elemPare.appendChild(divError);
								//elem.style.borderColor='red';
								$(elem).addClass('ui-state-error'); 
								elem.focus();
							}
						}else{			//No es buit, es comprova si hi havia missatge d'error, i si n'hi havia s'elimina
							if (document.getElementById("error"+elem.id) != undefined){
								//elem.style.borderColor="";
								$(elem).removeClass('ui-state-error'); 	
								$(elem).addClass('ui-state-default'); 
								var divError=document.getElementById("error"+elem.id);
								var elemPare=elem.parentNode;
								elemPare.removeChild(divError);
							}
						}
					}
					if($("#"+elem.id).attr("tipusVal")=="dni"){
						var patroVal=/(^\d{8}[A-Z]$)|(^\d{7}[A-Z]$)|(^[A-Z]\d{8}$)|(^[A-Z]\d{7}$)|(^[A-Z]\d{7}[A-Z]$)/;
						if(!elem.value.match(patroVal)){			//No es un email, es crea el missatge d'error dinamicament
							validat=false;
							if(document.getElementById("error"+elem.id)==null){
								var elemPare=elem.parentNode;
								var divError=document.createElement("div");
								divError.id="error"+elem.id;
								divError.innerHTML="Aquest camp ha de ser un dni valid";
								elemPare.appendChild(divError);
								//elem.style.borderColor='red';
								$(elem).addClass('ui-state-error'); 
								elem.focus();
							}
						}else{			//No es buit, es comprova si hi havia missatge d'error, i si n'hi havia s'elimina
							if (document.getElementById("error"+elem.id) != undefined){
								//elem.style.borderColor="";
								$(elem).removeClass('ui-state-error'); 	
								$(elem).addClass('ui-state-default'); 
								var divError=document.getElementById("error"+elem.id);
								var elemPare=elem.parentNode;
								elemPare.removeChild(divError);
							}
						}
					}
					if($("#"+elem.id).attr("tipusVal")=="num"){
						var patroVal= /[0-9]/;
						if(!elem.value.match(patroVal)){			//No es un email, es crea el missatge d'error dinamicament
							validat=false;
							if(document.getElementById("error"+elem.id)==null){
								var elemPare=elem.parentNode;
								var divError=document.createElement("div");
								divError.id="error"+elem.id;
								divError.innerHTML="Aquest camp ha de ser un numero";
								elemPare.appendChild(divError);
								//elem.style.borderColor='red';
								$(elem).addClass('ui-state-error'); 
								elem.focus();
							}
						}else{			//No es buit, es comprova si hi havia missatge d'error, i si n'hi havia s'elimina
							if (document.getElementById("error"+elem.id) != undefined){
								//elem.style.borderColor="";
								$(elem).removeClass('ui-state-error'); 	
								$(elem).addClass('ui-state-default'); 
								var divError=document.getElementById("error"+elem.id);
								var elemPare=elem.parentNode;
								elemPare.removeChild(divError);
							}
						}
					}
				}
			}
		}
	}
	return validat;
}

