Submetendo 02 forms… Parte 1

fevereiro 2, 2007 às 4:55 pm | Publicado em Java, JavaScript | 1 Comentário

Ultimamente acompanho vários fóruns sobre a tecnologia java. Acho muito legal porque nos fóruns podemos conhecer novas pessoas, compartilhar idéias, dúvidas, etc…

Este post foi escrito inspirado numa dúvida que sempre vejo nos fóruns:

“Tenho dois formulários em minha página e preciso submeter os dois para o servidor quando eu clico em Enviar. Como faço isso?”

Também já tive esta dúvida e gostaria de mostrar a solução que encontrei.

———————————–

Veja o seguinte html:

<form name=”form1″>
<input type=”text” name=”input1″>
</form>

<form name=”form2″>
<input type=”text” name=”input2″>
</form>

<input type=”button” value=”Enviar” onclick=”submeterForm();”>

—————————–

Ao clicar no botão submeter, deveremos submeter os dois forms em apenas um POST para o servidor. Para isso vamos usar um pouco de javascript e AJAX.

A idéia é simples: No método POST os parâmetros são submetidos no corpo da requisição http, no formato de uma queryString (idêntica a queryString utilizada para passagem de parâmetros no método GET). Portanto precisamos montar esta queryString e adicioná-la no corpo da requisição.

Veja a função que irá recuperar a queryString que devemos submeter para o servidor:

———————

function submeterForm(){
var query = recuperarQuery();
}

function recuperarQuery(){
var query = ”;
query += ‘input1=’ + document.form1.input1.value;
query += ‘&input2=’ + document.form2.input2.value;
return query;
}

—————————-

Suponha que foi informado nos inputs os valores:

input1= ‘Marcelo’

input2 = ‘Madeira’

A função recuperarQuery() retornaria: input1=Marcelo&input2=Madeira

A função foi implementada de forma bem simples, mas ela poderia por exemplo navegar nos forms concatenando todos os campos ou ainda receber por parâmetro quais forms deverão ser concatenados. Foi uma dica….

Agora devemos adicionar esta queryString no corpo de nossa requisição AJAX e isto será visto na segunda parte do tutorial.

T+

Anúncios

1 Comentário »

RSS feed for comments on this post. TrackBack URI

  1. Ótimo, é isto que eu preciso.


Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Crie um website ou blog gratuito no WordPress.com.
Entries e comentários feeds.

%d blogueiros gostam disto: