Ir para conteúdo

POWERED BY:

Arquivado

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

Wellington09

select multiple

Recommended Posts

Boa tarde pessoal!

Tenho uma checkbox que ao deixar ela checked, eu removo todos os dados que estão na select multiple

segue o codigo abaixo:

 

 

               <select name="valores" multiple="multiple" required>
               	<option value="1">valor 01</option>
               	<option value="2">valor 02</option>
               	<option value="3">valor 03</option>
               </select>

 

jQuery('#all').click(function(){
	if(jQuery('#all').attr('checked')){
		jQuery('select option').each(function(e, option) {
			jQuery(option).remove();
		});
	}
 	});

 

 

Porem estou com o seguinte problema, o que eu gostaria de fazer é, em vez de apagar eu quero deixar todas selecionadas

 

segue o codigo abaixo:

 

 

jQuery('#all').click(function(){
	if(jQuery('#all').attr('checked')){
		jQuery('select option').each(function(e, option) {
			jQuery(option).attr('selected');
		});
	}
 	});

 

 

mas o codigo não funciona, alguem sabe me dizer pq?

 

Para eu selecionar todos, eu tenho que ficar segurando o CTRL ou SHIFT e clicar em cima de todos os dados para enviar os values.

 

No caso eu quero enviar todos os valores, não quero deixar nenhum sem selecionar, sei que poderia colocar o atributo selected nos campos, mas se o usuario clicar em um outro valor sem segurar o CTRL , os campos que estavam selecionados não ficaram mais

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde, Wellington09.

 

Fiz assim oh!

 

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="jquery-1.5.2.min.js"></script>

</head>
<body>
<select id="all" name="valores" multiple="multiple" required>
           <option value="1">valor 01</option>
           <option value="2">valor 02</option>
           <option value="3">valor 03</option>
   </select>
   <script type="text/javascript">
	jQuery('#all').change(function(e){
		e.preventDefault();


		jQuery('#all option').attr('selected', 'selected');
	});
</script>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pela ajuda Marco, estou tentando fazer isso já faz tempo e não achava solução, você foi de grande ajuda.

 

Agora vou ver se consigo fazer um filtro, para saber se todas as options estão selecionadas, antes de enviar para o banco com o botão submit.

 

Mais um vez muito obrigado pela ajuda.

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.