Ir para conteúdo

POWERED BY:

Arquivado

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

rodrigofariat

Usando mais de um parametro do onSubmit no HTML

Recommended Posts

Pessoal,

 

Nos meus HTML na maioria das vezes uso javascript, e uso a seguinte linha:

 

 <form name="cadastrofunc" action='cadastro.php' method="post" onSubmit="return validaFormFunc()">

 

O que eu quero saber é se posso colocar dois valores no OnSubmit, ou seja como rodar dois scripts em javascript ?

 

Att,

 

Rodrigo Faria

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça tipo assim amigo:

<script>function _duasfuncoes(){//Chama duas funções para validação if(!validaFormFunc()){//funcao 1  //Mensagem de erro  return false; } if(!validaFormFunc2()){//funcao 2  //Mensagem de erro  return false; }return true;}</script><form name="cadastrofunc" action='cadastro.php' method="post" onsubmit="return _duasfuncoes()">

Leia os comentarios na script e irá entender.

 

Movideo de HTML :seta: javascript

 

Atenciosamente Silverfox

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá, primeiramente uma dica.

 

Devemos sempre separar estrutura de apresentação de comportamento.

Se nós evitamos usar o atributo style, porque ainda insistir em onmouseover, onmouseout, onkeydown e derivados dentro da estrutura do documento?

 

http://s1mone.net/blog/2007/10/definindo-estrutura-apresentacao-e-comportamento/

http://www.dei.isep.ipp.pt/~mouta/ARQSI-2009-2010-1Sem/SeparacaoEstruturaApresentacaoComportamento.pdf

 

No javascript, mais especificamente dentro da API DOM, cada tag passa a ser um elemento, e cada atributo passa a ser uma propriedade.

 

Assim, podemos facilmente acessar as propriedades on*** de qualquer tag/elemento dentro de javascript:

document.getElementById('teste').onclick = function(){ alert('você clicou no elemento "teste"'); }
Existe um problema. Como temos por costume inserir nosso javascript dentro da tag <head>, podemos algumas vezes, apontar para um elemento que ainda não foi renderizado pelo navegador, perdendo nosso efeito, Para isso, colocaremos todos os efeitos dentro de um evento do documento. Ao terminar de carregar (onload).

 

window.onload = function(){ /* aqui definiremos os eventos dos elementos */ }
Agora que nos garantimos que a ação só irá acontecer quando todos os elementos estiverem prontos, identificaremos nosso formulário.

 

<form action="envia.php" method="post" id="formulario">

 

E com o formulario identificado, vamos trabalhar as funcionalidades de seu evento submit:

 

 

 

window.onload = function(){    document.getElementById('forumualrio').onsubmit = function(){        alert('você está enviando um formulário');    }}
Alguns eventos que realizam ações como o envio de formulários ou o clique de âncoras, dão valor ao retorno da função. Assim:

 

 

 

window.onload = function(){    document.getElementById('formulario').onsubmit = function(){        var inputs = this.getElementsByTagName('input');        for(var i = 0; i < inputs.length; i++) if(inputs.item(i).name="nome") var nome = inputs.item(i);        if(nome.value == '') {            alert('Campo "nome" não pode ficar vazio.');            return false;        }    }}
O valor false do retorno para a função que foi atrelada ao evento onsubmit cancela a ação de enviar o formulário.

 

espero que sirva para as suas necessidades. Imagem Postada

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.