Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

david_slipkorn

focus() e onBlur no input - Problema no Firefox

Recommended Posts

Olá galera ...Meu problema é o seguinte, tenho um função em javascript para validar CPF que é chamada no evento onBlur do componente input "text". No caso de essa função retornar erro, mostro o alert() e em seguida posiciono o foco para o input novamente (document.form.input.focus()). No IE isso funciona normalmente, porém no Firefox o foco não volta para o campo do CPF, mostra o alert('CPF Inválido') e em seguida pula para o próximo campo.É possível contornar esse problema pois a intenção é não deixar o cara sair do campo sem digitar um CPF válido ou deixar o campo em branco.Obrigado pela atenção !!! Valew galera :D .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá galera ...

 

Meu problema é o seguinte, tenho um função em javascript para validar CPF que é chamada no evento onBlur do componente input "text". No caso de essa função retornar erro, mostro o alert() e em seguida posiciono o foco para o input novamente (document.form.input.focus()). No IE isso funciona normalmente, porém no Firefox o foco não volta para o campo do CPF, mostra o alert('CPF Inválido') e em seguida pula para o próximo campo.

 

É possível contornar esse problema pois a intenção é não deixar o cara sair do campo sem digitar um CPF válido ou deixar o campo em branco.

 

Obrigado pela atenção !!! Valew galera :D .

Tire o focus() da sua função de validação que é chamada pelo onBlur e faça o seguinte:

 

-> Coloque no seu form o código em negrito, conforme abaixo:

<form id="form1" name="form1" method="POST" action="SUA_AÇÃO" onsubmit="return validarFormulario(this)">

 

-> E em seguir, você cria essa função abaixo e chama novamente a sua função da validação

function validarFormulario(theForm)

{

if (! CHAME_NOVAMENTE_A_SUA_FUNÇÃO_AQUI ) {

theForm.ID_DO_SEU_INPUT.focus();

return false;

}

}

 

Observação: Lembre-se que você tem que tirar o focus() da sua função de validação.

 

Espero que isso possa te ajudar http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.