Ir para conteúdo

POWERED BY:

Arquivado

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

mapb_1990

enviar formulario via javascript

Recommended Posts

boas,

preciso de fazer uma validação de um form com o javascript.

estou utilizar o seguinte codigo:

 

<form action="java script:valida_frm();" method="post" name="registo">
	<fieldset>
		<legend><a name="">Dados Pessoais</a></legend>
		<dl>
			<dt><label>Nome: <font color="#FF0000">(*)</font></label></dt>
			<dd><input name="nome" size="75" type="text" value="" /></dd>
		</dl>
	</fieldset>
	<fieldset>
		<legend><a name="">Contactos</a></legend>
		<dl>
			<dt><label>Telefone:</label></dt>
			<dd><input name="telefone" size="75" type="text" value="" /></dd>
		</dl>
		<dl>
			<dt><label>Telemóvel:</label></dt>
			<dd><input name="telemovel" size="75" type="text" value="" /></dd>
		</dl>
		<dl>
			<dt><label>Fax:</label></dt>
			<dd><input name="fax" size="75" type="text" value="" /></dd>
		</dl>
		<dl>
			<dt><label>e-mail: <font color="#FF0000">(*)</font></label></dt>
			<dd><input name="mail" size="75" type="text" value="" /></dd>
		</dl>
		<dl>
			<dt><label>Website:</label></dt>
			<dd><input name="site" size="75" type="text" value="" /></dd>
		</dl>
	</fieldset>
	<fieldset>
		<legend><a name="">Aparelhos</a></legend>
		<dl>
			<dt><label>Número total de aparelhos: <font color="#FF0000">(*)</font></label></dt>
			<dd><input name="aparelhos" size="75" type="text" value="1" /></dd>
		</dl>
	</fieldset>
	<fieldset class="submit-buttons">
		<legend>Enviar</legend>
		<input class="button1" id="submit" name="entrar" value="Enviar" type="submit" /> 
		<input class="button2" id="reset" name="reset" value="Reiniciar" type="reset" />
	</fieldset>
</form>

<script language="javascript">
function valida_frm(){
	if(document.registo.nome.value == "") {
		alert("Por favor introduza o seu nome!");
	} else if(document.registo.mail.value == "") {
		alert("Por favor introduza o seu e-mail!");
	} else if(document.registo.aparelhos.value == "") {
		alert("Por favor introduza a quantidade de aparelhos que deseja registar!");
	} else {
		document.registo.submit();
	}
}
</script>

funciona td certinho à excepção do else, pois ele na envia os dados.

alguém ajuda?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá mapb_1990,

 

Parece que sua rotina entra em um loop infinito...

 

você colocou no action da sua página... "java script:valida_frm();"

ou seja... quando o formulário for submetido, ao invés de enviar dados, será executada essa função...

quando chega no parâmetro else da sua condição ele submete o formulario...

que por sua vez executa a função, que submete o formulario, que executa a função... e assim infinitamente...

 

para enviar os dados, você tem que definir para onde vai enviar...

tem algumas formas de fazê-lo... por exemplo...

 

na sua cláusula "else" coloque assim:

document.registo.action='minhaPaginaDeDestino.asp';
document.registo.submit();

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.