Submetendo vários formulários em um só clique com JavaScript

10 respostas
A

Há algum problema com o código abaixo?

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title></title>
	<script language="javascript">
			
		function submeteFormulario(){
			document.form1.submit();
			document.form2.submit();
		}
	</script>
</head>
<body>
	<form name="form1"  action="UploadArquivoEpubServlet" enctype="multipart/form-data" method="post">
			<input type="file" name="file1" /><br />
			<input type="button" onclick="submeteFormulario();" value="Publicar" /><br />  
	</form>
	<form name="form2" action="CampoFornecedorServlet" method="post">
		    Fornecedor:	<input type="text" name="text1" id="campo2" /><br />		
	</form>
</body>

Pois não funciona ou submete um ou o outro nunca os dois.

10 Respostas

J

Oi,

Dei uma olhada, e se vc trocar o evento onClick por onSubmit?
Um palpite apenas… eu tentei, hehe :smiley:
flw, sucesso aí.

A

Estou fazendo uns testes, testei da forma abaixo não sei se teria de fato diferença, todavia também não funcionou:

function submeteFormulario(){
			document.form1.submit();
			
			submeteForm2();
		}
		
		function submeteForm2(){
			document.form2.submit();
			
		}
A

julianom:
Oi,

Dei uma olhada, e se vc trocar o evento onClick por onSubmit?
Um palpite apenas… eu tentei, hehe :smiley:
flw, sucesso aí.

Testando…

A

Não, não deu certo, na verdade nem aparece como atributo nesta linha:

<input type="button" onsubmit="submeteFormulario();" value="Publicar" /><br />

dentro de um .jsp.

J

Oi,

Troca o input type por submit.
No evento, só coloca para submeter o form2, pq o form1 já está sendo submetido.
Imagino que se colocar o form1.submit(), irá submetê-lo 2 vezes.

flw.

A

Puxa, ainda não... Veja:

<script language="javascript">
		
		function submeteFormulario(){
			document.form1.submit();
			document.form2.submit();
		}
	</script>
</head>
<body>
	<form name="form1"  action="UploadArquivoEpubServlet" enctype="multipart/form-data" method="post">
			<input type="file" name="file1" /><br />
	</form>
	<form name="form2" action="CampoFornecedorServlet" method="post">
		    Fornecedor:	<input type="text" name="text1" id="campo2" /><br />		
	</form>
	<input type="submit" onsumit="submeteFormulario();" value="Publicar" /><br />  
</body>
J
andredecotia:
Puxa, ainda não... Veja:
<script language="javascript">
		
		function submeteFormulario(){
			document.form1.submit();
			document.form2.submit();
		}
	</script>
</head>
<body>
	<form name="form1"  action="UploadArquivoEpubServlet" enctype="multipart/form-data" method="post">
			<input type="file" name="file1" /><br />
	</form>
	<form name="form2" action="CampoFornecedorServlet" method="post">
		    Fornecedor:	<input type="text" name="text1" id="campo2" /><br />		
	</form>
	<input type="submit" onsumit="submeteFormulario();" value="Publicar" /><br />  
</body>
Troque isso:
input type="submit" onsumit="submeteFormulario();" value="Publicar" /><br />
por isso:
input type="submit" onsubmit="submeteFormulario();" value="Publicar" /><br />
Vamos ver...
A

rs de fato eu havia digitado errado hehehe…

de qualquer forma n funcionou, testei de novo só certificar disso… estranho, não?

A

ele funcionou mas só um form é submetido, nunca os dois…

J

O submit está fora dos 2 forms, ele tem que estar dentro de um form.

flw.

Criado 4 de fevereiro de 2011
Ultima resposta 4 de fev. de 2011
Respostas 10
Participantes 2