Ir para conteúdo

Arquivado

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

JuniorCampos

ValidaForm

Recommended Posts

Galera, to com um problemão.

Meu javascript trava o ie ... Alguém pode me dizer pq?

Grande abraço a todos...

function validaNome() {
	if(document.formContato.nome.value=="") {
		document.getElementById("respostaNome").innerHTML = " (Por favor, preencha seu nome.)";
		document.formContato.nome.focus();
		return false;
	}else {
			document.getElementById("respostaNome").innerHTML = "";
			return true;
		}
}

function validaEmail() {
	if(document.formContato.email.value=="") {
		document.getElementById("respostaEmail").innerHTML = " (Por favor, preencha seu e-mail.)";
		document.formContato.email.focus();
		return false;
	}
	parte1 = document.formContato.email.value.indexOf("@");
	parte2 = document.formContato.email.value.indexOf(".");
	parte3 = document.formContato.email.value.length;
	if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) {
		document.getElementById("respostaEmail").innerHTML = " (O email parece inválido. xxx@xxx.xxx)";
		document.formContato.email.focus();
		return false;
	}	
	else {
			document.getElementById("respostaEmail").innerHTML = "";
			return true;
		}
}

function validaAssunto() {
	if(document.formContato.assunto.value=="") {
		document.getElementById("respostaAssunto").innerHTML = " (Por favor, preencha o assunto.)";
		document.formContato.assunto.focus();
		return false;
	}else {
			document.getElementById("respostaAssunto").innerHTML = "";
			return true;
		}
}

function validaMsg() {
	if(document.formContato.msg.value=="") {
		document.getElementById("respostaMsg").innerHTML = " (Por favor, preencha a mensagem.)";
		document.formContato.msg.focus();
		return false;
	}
	var contaChar = document.formContato.msg.value.length;
	if(contaChar <= 10) {
		document.getElementById("respostaMsg").innerHTML = " (É necessário mais de 10 caracteres.)";
		document.formContato.msg.focus();
		return false;	
	}else {
			document.getElementById("respostaMsg").innerHTML = "";
			return true;
		}
}

function validaForm() {
	if(validaNome() == false) {
		return false;
	}
	if(validaEmail() == false) {
		return false;
	}
	if(validaAssunto() == false) {
		return false;
	}
	if(validaMsg() == false) {
		return false;
	}else {
			document.getElementById("respostaForm").innerHTML = " Enviando email...";
			return true;
	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, o HTML eh esse ...

								<div id="conteudoForm" align="left">
									<form name="formContato" action="processaContato.php" onsubmit="return validaForm()" method="post">
									
										<div>Nome: <span id="respostaNome"></span> </div>
										<div><input type="text" name="nome" onblur="validaNome()" class="boxTexto" size="44" /></div>
										<div>Email: <span id="respostaEmail"></span></div>
										<div><input type="text" name="email" onblur="validaEmail()" class="boxTexto" size="44" /></div>
										<div>Assunto: <span id="respostaAssunto"></span></div>

										<div><input type="text" name="assunto" onblur="validaAssunto()" class="boxTexto" size="44" /></div>
										<div>Mensagem: <span id="respostaMsg"></span></div>
										<div><textarea rows="5" cols="33" name="msg" onblur="validaMsg()"></textarea></div>
										<div align="center"><input type="submit"  value="Enviar" /><input type="reset" value="Limpar" /></div>
										<div align="center"><span id="respostaForm"></span></div>
									
									</form>								
								</div>

Cara, ele trava completamente o IE, no FF funciona corretamente...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Junior achei seu problema. Como você usou a função onblur e dentro da função tem um .focus(), o internet explorer nao entende o q fazer e trava. Ao sair do campo nome sempre travava aqui, e depois q tirei o focus travava nas outras menos no nome.

 

Se voce tirar o focus das funções ele vai parar de travar, aqui funcionou.

 

Tente ai se nao resolver posta aqui denovo beleza?

 

abraço!

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.