function valida_cnpj_cpf(pathToAsp,inputText,delegated){
  //posições para tooltip
  var $top=$(inputText).offset().top;
  var $left=$(inputText).offset().left;
  var $width=$(inputText).width();
  var $height=$(inputText).height();
  var $id_generator=$(inputText).attr("id");
  
  //implementando o containner para o tooltip
  if(!($("#"+$id_generator+"_error_validation"))[0]){
    $("body").append("<div class=\"label\" style=\"font-weight:bold;display:none;padding:2px;color:white;position:absolute;background-color:red;border:1px solid red;\" id=\""+$id_generator+"_error_validation\"></div>");
    $("#"+$id_generator+"_error_validation").css({"top":$top,"left":($left+$width+8),"opacity":0.8});
  }
  
  //cpf a ser validado
  var vCpf = $(inputText).val();	
	
  //apenas fara a requisição ajax caso seja informado um CPF/CNPJ	
  if(!vCpf == ""){	
  //(JQuery)getJSON(path para o asp,parâmetros,callback(retorno){})	
  //envia para o arquivo asp os parametros, o callback recebe os dados retornados na variável data
  $.getJSON(pathToAsp,({cpf:vCpf}),function(cpf){
																   
	if(cpf.valido == "N"){
	  $(inputText).trigger("focus").attr("value","").css({"backgroundColor":"#FFFFCC","border":"1px solid gray"});
	  $("#"+$id_generator+"_error_validation").text("*CPF/ CNPJ Inválido.").fadeIn(300);
	}else{
	  $(inputText).css({"backgroundColor":"#FFFFFF","border":"1px solid gray"});
	  $(inputText).attr("value",strip($(inputText).attr("value")))
      $("#"+$id_generator+"_error_validation").text("").hide();
	}

    //retorno a execução da function recebida como parametro caso haja necessidade
	//retorno para a mesma os adicionais (retorno,id do tooltip, id do input-text 
	if(delegated != undefined)
	  delegated(cpf,$("#"+$id_generator+"_error_validation"),inputText);
  });
  }//fim if(!vCpf == ""){	
}

function strip(vCpf){
  vCpf = vCpf.replace("-","");
  vCpf = vCpf.replace(".","");
  vCpf = vCpf.replace(".","");
  vCpf = vCpf.replace("/","");
  
  return vCpf
}
