Ir para conteúdo

POWERED BY:

Arquivado

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

anarcampos

Validacao de script

Recommended Posts

Oi!! Primeiro q td um bom ano!!

 

Tou fazendo um formulário e queria que quando validasse os campos todos (pela função javascript validate() ) passasse para outra página para poder inserir os campos. Agora eu só consigo fazer ou validar ou inserir sem fazer a validaçao, mas nao as duas coisas.. Alguem consegue ajudar?

 

 

Aí vai o código:

<script type="text/javascript" language="javascript">
function validate(classif) {

	if(!document.getElementById) return;

	// get form variables Título descricao contacto imagem
	var titulo = document.getElementById("titulo").value;
	var descricao = document.getElementById("descricao").value;
	var contacto = document.getElementById("contacto").value;


	var incorrect = new Array();
	var no = 0;
	
	
	var regExp = /[A-Za-z]{5,}/;
	if(!regExp.test(titulo)) {
		incorrect[no] = "1";
		no++;
		titulo = "";
	}
		
	regExp = /[a-zA-Z0-9\.\-\+\_\?\(\)]/;
	if(!regExp.test(descricao)) {
		incorrect[no] = "2";
		no++;
		descricao = "";
	}

	
	regExp = /[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-Z0-9]{2,4}/;
	//regExp2 = / [0-9]{9,} /;	 and !regexp2.test(contacto)
	if(!regExp.test(contacto)) {
		incorrect[no] = "3";
		no++;
		contacto = "";
	}



	for(i=1;i<4;i++) {
		document.getElementById(i).style.color="#000000";
	}
		
	for(j=0;j<no;j++) { 
		document.getElementById(incorrect[j]).style.color="#CDC9C9";
	}
	if(no > 0) {
	document.getElementById("errors").innerHTML = "<span class=\"error\">Ocorreu um erro com o formulário. <br/> Por favor insere correctamente os campos assinalados.</span><br />";
	return false;
	}

	document.getElementById("titulo").value = titulo;
	document.getElementById("descricao").value = descricao;
	document.getElementById("contacto").value = contacto;	
}
</script>

<body>
<style type="text/css">
.error {	
	color:8B0000;
}
span {
	font-family:arial;
	font-weight:bold;
}
</style>

<div id="errors"></div>
<form method="post" name="classif" action="inserir_classif.php" onsubmit="return validate(classif)">
<b>Os campos são de preenchimento obrigatório:</b>


		<p><span id="1">Título: </span>
		<input type="text" name="titulo" id="titulo" align="left" size="45" maxlength="45">
		</p>
		
		<p><span id="2">Descrição do classificado: </span>
		<br/>
		<textarea name="descricao" id="descricao" wrap="virtual" rows="10" cols="30" align></textarea>
		</p>
		
		<p><span id="3">Contacto: </span>
		<input type="text" name="contacto" id="contacto" align="left" size="45" maxlength="45">
		</p>

<input type="button" name="OK" value="Submit"/>

Acontece que se eu tirar onsubmit de

<form method="post" name="classif" action="inserir_classif.php" onsubmit="return validate(classif)">

e acrescentar

<input type="button" name="OK" value="Submit" onClick="validate()"/>

a funcao validate funciona perfeitamente mas já nao passa para a página inserir_classif.php qd está tudo certo. Não percebo. Tmabém já tentei pôr return true e false mas tb n consegui q funcionasse.

 

Sem alguem achar o erro agradecia muito q respondesse rápido pois tenho d entregar o trabalho.

De qualquer das maneiras mt Obrigada! http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.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.