Escopo - nao consigo acessar uma proprieadade da classe
ola pessoa
estou tendo o seguinte problema
tenho o codigo abaixo
/**
* @author Eduardo
* @version 1.00
*/
function PessoaFlyweight(){
this.nomeFieldName = "";
this.nomeFieldLabel = "";
this.documentoFieldName = "";
this.documentoFieldLabel = "";
this.documentoDescricaoFieldName = "";
var validate = new Validate();
this.trigger = function(){
getID(this.documentoFieldName).onblur = function(){this.displayDocumentoLabel();}
}
this.isValid = function(){
if( validate.isJustLettersInteger(this.nomeFieldName,this.nomeFieldLabel,5,50)==false ||
validate.isCPFouCNPJ(this.documentoFieldName,this.documentoFieldLabel)==false){
return false;
}else{
return true;
}
}
this.displayDocumentoLabel = function(){
getID(this.documentoDescricaoFieldName).innerHTML = '';
setIDClass(this.documentoFieldName,'FormCampo');
//verifico se é um tipo de pessoa valida
if(validate.isCPFouCNPJ(this.documentoFieldName,this.documentoFieldLabel)==true){
//se for uma pessoa juridica
if(validate.isCNPJ(this.documentoFieldName,'')==true){
//aviso que é uma pessoa juridica
getID(this.documentoDescricaoFieldName).innerHTML = 'Jurídica';
}
if(validate.isCPF(this.documentoFieldName,'')==true){
//aviso que é uma pessoa fisica
getID(this.documentoDescricaoFieldName).innerHTML = 'Física';
}
}else{
getID(this.documentoDescricaoFieldName).innerHTML = 'Inválido';
setIDClass(this.documentoFieldName,'FormCampoErr');
//setIDDisplay('pessoaTipoFisica','none');
}
}
}
meu principal problema é nesta linha
getID(this.documentoFieldName).onblur = function(){this.displayDocumentoLabel();}
seguinte, ele nao reconhece o "this.displayDocumentoLabel()", pra ele é como se nao existi-se, porem, se eu colocar antes do "function()", ele reconhece.
pelo que entendi, ele nao consegue ler o escopo por causa do funcion.
alguem podem me ajudar com isso?
em como acessar esse metodo!?
abs
T+
Discussão (3)
Carregando comentários...