Olá amigos, boa noite.
Tenho o seguinte fragmento de código abaixo e estou tendo problemas ao setar foco no componente.
Já verifiquei e a função está retornando false ao informar um cpf inválido, ou seja, está ok.
Ao executar o evento onblur no campo abaixo, é exibido um alert informando que o cpf é inválido, pois a minha função faz
essa verificação e retorna falso. Com isso o focus() não funciona, e o foco vai para o próximo campo.
Segue abaixo:
<p:inputMask id="iptCpf" value="#{clienteController.clienteSelecionado.nuCpf}"
required="true" mask="999.999.999-99" maxlength="11" size="14"
onblur="if (!validarCPF(this)) {
document.getElementById('form:iptCpf').focus();
}"
requiredMessage="#{msg['cliente.cpf.requerido']}"
readonly="#{clienteController.somenteLeitura}">
</p:inputMask>
<h:inputHidden />
Ao executar o firebug e informar exatamente o código javascript do evento onblur manualmente o foco vai para o campo.
Não sei como resolver essa questão, alguém teria alguma idéia? Pois preciso travar a digitação do usuário nesse campo
até que seja informado um valor válido.
Agradeço desde já pela atenção,
Abraços,
Att,
Lessandro