• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

nakuro

Melhor forma de validar formulário em Javascript

2 mensagens neste tópico

Tomei conhecimento aqui á pouco tempo atrás de uma forma que desconhecia de chamar os campos de um formulario em javascript, inclusive disseram-me ser esta a melhor forma de o fazer:

<html>
<head>
<script type="text/javascript">
function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
  {alert(alerttxt);return false;}
else {return true}
}
}

function validate_form(thisform)
{
with (thisform)
{
if (validate_required(email,"Email must be filled out!")==false)
  {email.focus();return false;}
}
}
</script>
</head>

<body>
<form action="submitpage.htm"
onsubmit="return validate_form(this)"
method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit"> 
</form>
</body>

</html>

A forma que costumo usar é chamar cada campo pelo:

var check=document.getElementById("email");

E não usando o with.

A minha questão é qual destas formas é a mais correcta, isto claro, se existe alguma mais correcta.

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A questão que colocas tem uma resposta simples: ambas as técnicas são válidas, se bem que document.getElementById creio, mas não tenho a certeza, de que não é implementado por todos os browsers.

Quero deixar apenas uma nota: a melhor forma de validar um formulário é sempre do lado do servidor e não do lado do cliente.

A razão é simples: validar do lado do cliente implica uma porta aberta a hacking, pelo que que se torna necessário validar do lado do servidor, e se se valida do lado do servidor, então não há razão para desperdiçar tempo e recursos a implementar a mesma validação de duas formas distintas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora