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

fil79

função javascript

8 mensagens neste tópico

Boas

quero que uma função em javascript faça a validação de um campo em um form..como o form é criado dinâmicamente vindo de uma listagem tive de lhe inserir um id:

<form id ="formv<?=$rows['id']?>" onSubmit="return valida(<?=$rows['viatura_id']?>);" method="post">

depois uso uma função para validar mas esta não dá erro ( javascript console) nem faz a validação:

function valida(valor){

if(document.getElementById('formv'+ valor).data.value!="")

{

  alert( "Tem de preencher o campo data!" );

  alert(valor);

  return false;

 

}

return true;

}

Agradeço qualquer ajuda!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta assim:

<form id ="formv<?=$rows['id']?>" onSubmit="valida(<?=$rows['viatura_id']?>);" method="post">

E já agora coloca o código sempre na tag CODE.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas

para ver se o gajo vai ao javascript, usa um alert no inicio da funcao valida.

depois no if tu vais é buscar o elemento que queres validar, não o form

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigado aos dois..já tentei e nada, a função faz o alert mas não valida...e continua sem dar erros de javascript!!é mt estranho

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em vez de tentares criar um valor dinamicamente para o nome do forumlário e usares isso no JS, tenta passar a referência para o formulário em si:

<form id ="formv<?=$rows['id']?>" onSubmit="return valida(this);" method="post">

e depois a tua função será algo como:

function valida(f){
  // a variável f "aponta" para o objecto do formulário
  // a vantagem é que podes pegar na data, mas tb em qualquer
  // outro campo indicando o seu nome, ex: f.nome.value

// suponho que aqui queiras dizer que se o campo
// estiver vazio, está a faltar qualquer coisa
if (f.data.value == "")
{
  alert( "Tem de preencher o campo data!" );
  //alert(valor);
  return false;

} else {
   return true;
}
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigado aos dois..já tentei e nada, a função faz o alert mas não valida...e continua sem dar erros de javascript!!é mt estranho

já consegui...obrigadão :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

já consegui...obrigadão :)

Podes deixar a solução para futura referência?

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