Jump to content
bar

Problema com Script

Recommended Posts

bar

Eu tenho este código, mas o script não esta a funcionar:

	<script type="text/javascript">

function validaForm()
{

//definição e  atribuição de variável com o nome completo do form	    
   var d = window.document.registo;

//validar o campo nome
if (d.nome.value == "")
  {
	window.alert("O campo Nome deve ser preenchido!");
	d.nome.focus();
	return false;
  }

//validar o comprimento do nome

var comprimento = d.nome.value.length;

if (comprimento < 10)
	{
		window.alert("O campo nome deve conter pelo mneos 10 caracteres!");
		d.nome.focus();
		return false;
	}

//validar o campo morada

if (d.morada.value == "")
  {
	window.alert("O campo Morada deve de ser preenchido!");
	d.morada.focus();
	return false;
  }

//validar o campo código-postal

if (d.codigo.value == "")
  {
	window.alert("O campo Código-Postal deve de ser preenchido!");
	d.codigo.focus();
	return false;
  }

//validar o campo distrito

if (d.distrito.value == "")
  {
	window.alert("O campo Distrito deve de ser preenchido!");
	d.distrito.focus();
	return false;
  }

//validar o campo país

if (d.pais.value == "")
   	  {
	window.alert("O campo País deve de ser preenchido!");
	d.pais.focus();
	return false;
  }

//validar o campo data de nascimento

if (d.data.value == "")
  {
	window.alert("O campo Data de Nascimento deve de ser preenchido!");
	d.data.focus();
	return false;
  }

//validar o campo sexo

if (d.sexo.value == "")
  {
	window.alert("O campo sexo deve de ser preenchido!");
	d.sexo.focus();
	return false;
  }

//validar o campo nacionalidade

if (d.nacionaliade.value == "")
  {
	window.alert("O campo nacionalidade deve de ser preenchido!");
	d.nacionalidade.focus();
	return false;
  }

//validar o campo Nº do BI

if (d.bi.value == "")
  {
	window.alert("O campo Nº BI deve de ser preenchido!");
	d.bi.focus();
	return false;
  }

//validar o campo válido até

if (d.valido.value == "")
  {
	window.alert("O campo Válido Até deve de ser preenchido!");
	d.valido.focus();
	return false;
  }

//validar o campo telemovel

if (d.telemovel.value == "")
  {
	window.alert("O campo Telemóvel deve de ser preenchido!");
	d.telemovel.focus();
	return false;
  }

//validar o campo profissão

if (d.profissao.value == "")
  {	
	window.alert("O campo Profissão deve de ser preenchido!");
	d.profissao.focus();
	return false;

  } 

//Validar o campo e-mail

if (d.mail.value == "")
  {
	window.alert("O campo E-mail deve de ser preenchido!");
	d.mail.focus();
	return false;
  }

//validar e-mail (verificação apenas da existência do símbolo @ e do ponto final)

arroba = d.mail.value.indexOf("@");
ponto = d.mail.value.indexOf(".");

//o método indexOf() devolve -1 caso não encontre a string

if (arroba == -1 | | ponto == -1)
	{
	     alert("O campo E-mail deve conter um endereço electrónico!");
	     d.mail.focus();
	     return false;
	}

//validar o campo telefone (só numeros)

if (isNaN(d.telefone.value))
	{
		window.alert("O campo deve conter apenas números !");
		d.telefone.focus();
		return false;
	}

//validar data de nascimento

erro=0;
hoje = new Date();
anoAtual = hoje.getFullYear();
barras = d.data.value.split("/");
if (barras.length == 3){
	   dia = barras[0];
	   mes = barras[1];
	   ano = barras[2];
	   resultado = (!isNaN(dia) && (dia > 0) && (dia < 32)) && (!isNaN(mes) && (mes > 0) && (mes < 13)) &&
(!isNaN(ano) && (ano.length == 4) && (ano <= anoAtual && ano >= 1900));
	   if (!resultado) {
			alert("Formato de data inavalido!");
			d.data.focus();
			return false;
	}
} else {
	  alert("Formato de data invalido!");
	  d.data.focus();
	  return false;
}

//validar preenchimento do campo sexo
if (!d.sexo[0].checked && !d.sexo[1].checked)
	{
	   alert("Selecione o sexo!")
 	   return false;
	}

return true;
}[/quote]


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Se não meteres esse js todo dentro de tags code apropriadas não terás ajuda.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
bar

Se não meteres esse js todo dentro de tags code apropriadas não terás ajuda.

Já está melhor?


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Meter dentro de um quote n era necessário. Mas assim está bem :D

ADD:

Depois de ver o código não sei aonde está a dar erro. Qual é o erro?


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
KTachyon

No HTML, colocaste nos objectos o id com o mesmo nome que tens no JavaScript? Fechaste esse código com </script>? Na form, colocaste o onSubmit=validaForm()?


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
bar

No HTML, colocaste nos objectos o id com o mesmo nome que tens no JavaScript? Fechaste esse código com </script>? Na form, colocaste o onSubmit=validaForm()?

Sim fechei com o </script> e também tenho os mesmo nomes que tenho no JavaScript

Na form tenho isto: <form name="registo" action="dados.php" method="post" onSubmit="return validaForm();">


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
KTachyon

E o que é que não está a funcionar, mais exactamente?


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
bar

E o que é que não está a funcionar, mais exactamente?

O JavaScript, é o que não está a funcionar


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Demasiado vago.

Qual é o erro?

(se usas firefox tens o error console, noutros browsers não sei como é)


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
bar

Demasiado vago.

Qual é o erro?

(se usas firefox tens o error console, noutros browsers não sei como é)

Tipo, vamos supor que não preencho o formulário e ao carregar no botão registar o javascript devia de actuar ou seja dar os alerts a dizer para preencher o nome e isso tudo.

Mas não, não dá alertas nenhums nem nada, nem nenhum erro como tu dizes, apenas funciona como o javascript não existisse.


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Preciso, então também do HTML que usaste no form, incluindo a própria tag form.

Se tens mais js nessa página pode ser que precise desse também.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
bar

Preciso, então também do HTML que usaste no form, incluindo a própria tag form.

Se tens mais js nessa página pode ser que precise desse também.

Já está resolvido, faltava uma "}" no javascript, e como são tantas nem tinha reparado.

Obrigado na mesma pela ajuda.  :D


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Então isso quer dizer que ele estava a dar erro!!!!

E tu afirmaste que não estava a dar erro!!!!!!!!!!>:D


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
KTachyon

Lol. Instala um debugger de JS no teu browser, para evitar que isto aconteça de novo xD


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
bar

Então isso quer dizer que ele estava a dar erro!!!!

E tu afirmaste que não estava a dar erro!!!!!!!!!!>:thumbsup:

Não estava a dar erro!


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Não estava a dar erro!

Como é que consegues afirmar isso se era um erro de sintaxe?

Qq browser que conheço indica erros de sintaxe. Uns de maneira diferente de outros.

O que tu usas não mostra erros de sintaxe?

Qual é que tu usas?


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
bar

Como é que consegues afirmar isso se era um erro de sintaxe?

Qq browser que conheço indica erros de sintaxe. Uns de maneira diferente de outros.

O que tu usas não mostra erros de sintaxe?

Qual é que tu usas?

firefox


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
brunoais

Esse regista todos os erros de sintaxe que os scripts js têm. Incluindo caracteres em falta como um '}'. Se calhar não sabes é ver os erros. É isso?


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
bar

Esse regista todos os erros de sintaxe que os scripts js têm. Incluindo caracteres em falta como um '}'. Se calhar não sabes é ver os erros. É isso?

talvez seja xD


Nem tocam na xixa.

Share this post


Link to post
Share on other sites
KTachyon

Instala um add-on chamado Firebug. Quando quiseres testar o JavaScript ele mostra-te os erros que o código tem de uma forma batante óbvia.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.