Ir para conteúdo

POWERED BY:

Arquivado

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

raphaeltsr

[Resolvido] Select submeter automaticamente

Recommended Posts

boa noite pessoal,

 

Tenho uma dúvida por falta de uso. Gostaria de relembrar como fazer um select submeter a informação assim que um option for selecionado.

 

Será que é possível fazer isso só com HTML ou vou ter que criar uma função em JS pra isso?

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vai ter de usar JS. Mas você quer submeter um formulário (mesmo que contendo apenas o select) ou simplesmente mudar de página de acordo com a seleção?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá dD,

 

 

Se seu objetivo é de submeter o formulário no momento em que o usuário selecionar uma das opções na caixa de seleção, então você. vai ter que usar algum tipo de script, como JavaScript.

 

A título de exemplo, eu montei uma página como exemplo. O código da página está abaixo. Copie o texto em um editor de texto, salve e abra a página.

 

A página contém um formulário onde ao você selecionar uma das opções, ele irá automaticamente submeter. Eu usei o search do google como exemplo.

 

Espero que isso ajude.

 

Um abraço.

 

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title>Busca pré-definina do Google BR</title>

<script type="text/javascript">

function jjSubmit()

{

x = document.getElementById("meuselect");

if (x.value != "naobuscar")

document.meuformulario.submit();

}

</script>

</head>

<body>

<form name="meuformulario" action="http://www.google.com.br/search" method="get">

<select id="meuselect" name="q" onchange="jjSubmit();">

<option id="naobuscar" value="naobuscar">- selecione item de pesquisa no google -</option>

<option value="referenciando">referenciando.com</option>

<option value="iMasters">iMasters</option>

</select>

<input type="hidden" name="hl" value="pt-BR" />

</form>

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o atributo NAME em forms não é um bom uso

ao inves de NAME use ID

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Busca pré-definina do Google BR</title>
<script type="text/javascript">
function jjSubmit()
{
x = document.getElementById("meuselect");
if (x.value != "naobuscar")
document.getElementById("meuformulario").submit();
}
</script>
</head>
<body>
<form id="meuformulario" action="http://www.google.com.br/search" method="get">
<select id="meuselect" name="q" onchange="jjSubmit();">
<option id="naobuscar" value="naobuscar">- selecione item de pesquisa no google -</option>
<option value="referenciando">referenciando.com</option>
<option value="iMasters">iMasters</option>
</select>
<input type="hidden" name="hl" value="pt-BR" />
</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vai ter de usar JS. Mas você quer submeter um formulário (mesmo que contendo apenas o select) ou simplesmente mudar de página de acordo com a seleção?

Usar só o select fora do form é até melhor que submeter o form.

 

Eu tentei a seguinte solução:

 

Criei um JavaScript pra mudar a página:

function me_leva(endereco)
{
	window.location = endereco;
}

E depois, criei o select normalmente sendo que utilizava um evento para puxar o JavaScript.

 

<select name="sort">
					<option>sort works by:</option>
					<option onclick="java script:me_leva('/andrecamara_novo/<?php print $language ?>/jobs/identidade-visual');">identidade visual</option>
					<option onclick="java script:me_leva('/andrecamara_novo/<?php print $language ?>/jobs/manipulacao-de-imagem');">manipulação de imagem</option>
					<option onclick="java script:me_leva('/andrecamara_novo/<?php print $language ?>/jobs/web');">web</option>
				</select>

O problema é que usando o onclick, só funciona no Firefox. A bo**a do IE7 e do IE6 não entende o comando e não toma ação nenhuma. Como o IE não tem depurado e no FF funciona, não tenho como saber o motivo exato.

 

Acho que seria o caso de tentar outra abordagem HTMLxJavaScript, mas não sei qual.

 

Alguma sugestão?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

use onchange ao inves de onclick(OBS.: deve-se aplicar ao SELECT e não ao OPTION)

<select name="sort" onchange="window.location = this.value">
<option value="a.html">sort works by:</option>
<option value="b.html">sort works by:</option>
<option value="c.html">sort works by:</option>
</select>

sua duvida é JAVASCRIPT irei mover o tópico

Webstandards: CSS / XML / XHTML/ HTML http://forum.imasters.com.br/public/style_emoticons/default/seta.gif javascript

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.