Ir para conteúdo
Fórum Script Brasil
  • 0

Dblclick


Guest Guest

Pergunta

Olá Pessoal,

Gostaria de que fosse removido (isso em asp e já sei como fazer) um ítem de um select quando eu desse duplo click, e que ele ao ser removido, fosse para o outro select ao lado, entendeu?

Ao clicar duas vezes e remover de um, automaticamente adiciona no outro select, como faço isso?...

Preciso de fazer isso em Javascript, já que as rotinas em ASP eu já sei como fazer.

Obrigado, Abraços!!!

Link para o comentário
Compartilhar em outros sites

20 respostass a esta questão

Posts Recomendados

  • 0

Crystian Obrigado pela atenção..

Desenvolvi:

function DisponiveisDblClick(opt)
{
	var index = opt.index;

	if (index > -1) {
  var novoitem = document.createElement("option");

  novoitem.value = opt.value;
  novoitem.text = opt.text;

  document.frmColunas.disponiveis.remove(index);
  document.frmColunas.selecionadas.add(novoitem, document.frmColunas.selecionadas.options.length);	
	}
	else {
  alert("Selecione um item na lista de Colunas Disponíveis");
	}
}

E não funciona por nada! mad.gif

Vê se acha algum erro ae por mim?

Muito Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

<head>

<script language="javascript">

    function troca(select, selectRecebe) {

    var obj = select.options[select.selectedIndex];

        selectRecebe.options[selectRecebe.options.length] = obj;

        select.remove(select.selectedIndex);

    }

</script>

</head>

<body>

<form name="form">

<select name="um" ondblclick="troca(this, document.form.dois)" size="2">

<option value="1">UM</option>

<option value="2">DOIS</option>

<option value="3">TRES</option>

<option value="4">QUATRO</option>

</select>

<select name="dois">

<option value="5">CINCO</option>

<option value="6">SEIS</option>

<option value="7">SETE</option>

<option value="8">OITO</option>

</select>

</form>

</body>

Cara você vai ter q utilizar o select com size para funcionar o ondblclick, porque se o select estiver com size padrão(1) ele nunca vai passar pelo evento ondblclick, porque no onclick ele marca a opção como selecionada e tira da tela, por isso pra funcionar tive q colocar um size. Fiz os testes no mozilla porque não tenho o IE, vê se te ajuda e dá uma estudada e uma adpatada pra ti.

Seguinte, fiz esse código pra ti mas te aconselho aprender um pouco sobre JS porque sempre q você tiver uma dúvida vai ter q recorrer a alguém para fazer o codigo pra ti, e isso não é bom pois nem sempre você vai encontrar alguém disponivel pra fazer o código pra ti.

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

Meu JS

function DisponiveisDblClick(select, selectRecebe) {
var obj = select.options[select.selectedIndex];
	selectRecebe.options[selectRecebe.options.length] = obj;
  select.remove(select.selectedIndex);
}
MEU HTML
<select name="selecionadas" size="20" id="selecionadas" ondblclick="DisponiveisDblClick(this, document.frmColunas.disponiveis)">
<%=html_aceitas%>
</select>

.
.
.

<select name="disponiveis" size="20" id="disponiveis" ondblclick="DisponiveisDblClick(this, document.frmColunas.selecionadas)">
<%=html_disponiveis%></select>

E Ainda não está Funcionando :/

Link para o comentário
Compartilhar em outros sites

  • 0

function AceitasDblClick(opt)
{
	var index = opt.index;
	[COLOR=red]alert(index);[/COLOR]	if (index > -1) {
  var novoitem = document.createElement("option");

  novoitem.value = opt.value;
  novoitem.text = opt.text;

  document.frmColunas.selecionadas.remove(index);
  document.frmColunas.disponiveis.add(novoitem, document.frmColunas.disponiveis.options.length);	
	}
	else {
  alert("Selecione um item na lista de Colunas Aceitas");
	}
}
Voltando a esse código, na mensagem é retornado 'undefined' e logo vem a msg
alert("Selecione um item na lista de Colunas Aceitas");
Por que ta retornando Undefined? No select está assim:
<select name="disponiveis" size="20" id="disponiveis" OnDBLClick="DisponiveisDblClick(this)">

sad.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Cara tenta entender a hierarquia q existe num select. Quando você chama uma function dum select e passa como parametro a palavra this você está passando o objeto select. Este objeto select possui várias options. Esse objeto select possui uma propriedade chamada selectedIndex q é a propriedade que retorna o indice da option selecionada, portanto não opt.index mas sim opt.selectedIndex.

Outra sugestão q te dou é trocar o nome de opt para select, ou obj, porque aquilo lá não é uma option, mas sim um select.

Vamo lá, vai testando por ae q vou te dando as dicas daqui...

abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

function DisponiveisDblClick([COLOR=green]select[/COLOR])
{
	var index = [COLOR=green]select.selectedindex[/COLOR];
	[COLOR=red]alert(index);[/COLOR]
	if (index > -1) {
  var novoitem = document.createElement("option");

  novoitem.value = select.value;
  novoitem.text = select.text;

  document.frmColunas.disponiveis.remove(index);
  document.frmColunas.selecionadas.add(novoitem, document.frmColunas.selecionadas.options.length);	
	}
	else {
  alert("Selecione um item na lista de Colunas Disponíveis");
	}
}
Ok Crystian, alterei aqui, porém ele vai logo pra mensagem:
alert("Selecione um item na lista de Colunas Disponíveis");
e no
alert(index);

Ele está retornando ainda, 'Undefined'..

Que que ta pegando aí? sad.gif

Muito Obrigado cara..

Link para o comentário
Compartilhar em outros sites

  • 0

Melhorando..

function DisponiveisDblClick(select)

{

var index = select.selectedindex;

alert(index);

if (index > -1) {

var novoitem = document.createElement("option");

novoitem.value = select.value;

novoitem.text = select.text;

document.frmColunas.disponiveis.remove(index);

document.frmColunas.selecionadas.add(novoitem, document.frmColunas.selecionadas.options.length);

}

else {

alert("Selecione um item na lista de Colunas Disponíveis");

}

}

Link para o comentário
Compartilhar em outros sites

  • 0

Ok, Certo..

Agora ele está mudando de Select Sim, porém quando ele vai pra outra caixa, ele vai no valor de 'undefined'.. por exemplo cliequei encima da palavra 'Clientes' aí vai pro outro select como 'undefined'..

Que que eu posso fazer para ageitar isso ae?

Abraços cara!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...