Ir para conteúdo

POWERED BY:

Arquivado

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

leocrj

Não passa valores de um select para outro

Recommended Posts

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><script language="JavaScript">   //--------------------------------------------------------------------------------//   function typeAhead (texto, lista) {	  lista.selectedIndex = -1;	  if (texto.value == "") return;	  var achou_algum = false;	  var txt = new String(texto.value).toLowerCase()	  var i = lista.options.length;	  while (i>0) {		 i--;		 if (txt != "") {			var opt = new String(lista.options[i].text).toLowerCase()			if (opt.indexOf(txt) == 0) {			   achou_algum = true;			   lista.options[i].selected = true;			} else {			   if (achou_algum) i = 0;			}		 }	  }///   var txt = new String(texto.value).toLowerCase()///   for (i=lista.options.length-1; i>=0; i--) {///	  lista.options[i].selected = false;///	  if (txt != "") {///		 var opt = new String(lista.options[i].text).toLowerCase()///		 if (opt.indexOf(txt) == 0) {///			lista.options[i].selected = true;///		 }///	  }///   }   }   //--------------------------------------------------------------------------------//   function transferOption (origem, destino) {	  // Desconsidera o ultimo item: linha com espacos para fixar a largura da lista	  var desconsideraUltimo = 1;	  var newoption;	  var tmpArray = new Array();	  var j = 0;	  if (origem.selectedIndex < 0) return;	  // Guarda o ultimo item da lista de destino (espacos) sem chave	  if (desconsideraUltimo == 1) {		 i = destino.options.length-1;		 tmpArray[j] = destino.options[i].text;		 destino.options[i] = null;		 j++;	  }	  // Limpa a lista de pontos selecionados	  for (i=destino.options.length-1; i>=0; i--) {		 tmpArray[j] = destino.options[i].text + "," + destino.options[i].value;		 destino.options[i] = null;		 j++;	  }	  // Guarda em um array a lista pontos selecionados	  for (i=0; i<origem.options.length; i++) {		 if (origem.options[i].selected) {			tmpArray[j] = origem.options[i].text + "," + origem.options[i].value;			j++;		 }	  }	  // Ordena o array com a lista de pontos selecionados	  tmpArray.sort();	  // Monta a lista de pontos selecionados sem redundancias	  var anterior = "";	  for (i=0; i<j; i++) {		 if (tmpArray[i] != anterior) {			anterior	= tmpArray[i];			var item	= tmpArray[i];			var virgula = item.indexOf(",");			var id;			var chave;			if (virgula < 0) {			   id	= item;			   chave = item;			}			else {			   id	= item.substring(0,virgula);			   chave = item.substring(virgula+1);			}			newoption = new Option(id, chave, true, true);			destino.options[destino.length] = newoption;///		 if (!document.getElementById) history.go(0);		 }	  }	  if (!document.getElementById) history.go(0);	  // De-seleciona os pontos da lista completa/*	  i = 0;	  while (i < origem.options.length) {		 if (origem.options[i].selected) {			origem.options[i].selected = false;		 }			i++;	  }*/	  origem.selectedIndex = -1;	  destino.selectedIndex = -1;   }   //--------------------------------------------------------------------------------//   function removeOption (lista, ultimo) {	  // Desconsidera o ultimo item: linha com espacos para fixar a largura da lista	  var desconsideraUltimo = (ultimo == null) ? 1 : ultimo;	  var i = 0;	  while (i < lista.options.length - desconsideraUltimo) {		 if (lista.options[i].selected) {//		  newoption = new Option(lista.options[i].text,//								 lista.options[i].value, true, true);//		  lista.options[lista.length] = newoption;//		  if (!document.getElementById) history.go(0);			lista.options[i] = null;		 }		 else {			i++;		 }	  }	  lista.selectedIndex = -1;	  //lista.pontos.selectedIndex = -1;   }   //--------------------------------------------------------------------------------//   function ordena (a, B) {	  if (a < B) return -1;	  if (a > B) return  1;	  return 0;   }   //--------------------------------------------------------------------------------//   function incluiOption (origem, destino) {	  var newoption;	  var inclui = true;	  var tmpArray = new Array();	  var novoItem = new Array();	  var j = 0;	  if (origem.selectedIndex < 0) return;	  for (i=destino.options.length-1; i>=0; i--) {		 tmpArray[i] = destino.options[i].text + "," + destino.options[i].value;	  }	  for (i=0; i<origem.options.length; i++) {		 if (origem.options[i].selected) {			novoItem[j] = origem.options[i].text + "," + origem.options[i].value;			j++;		 }	  }	  for (j=0; j<novoItem.length; j++) {		   for (i=0; i<tmpArray.length; i++) {			if (tmpArray[i] == novoItem[j]) inclui = false;		 }		 if (inclui) {			var virgula = novoItem[j].indexOf(",");			var id	  = novoItem[j].substring(0,virgula);			var chave   = novoItem[j].substring(virgula+1);			newoption   = new Option(id, chave, true, true);			destino.options[destino.length] = newoption;		 }	  }	  if (!document.getElementById) history.go(0);   }   //--------------------------------------------------------------------------------//   function moveParaCima (lista,direcao){	  //direcao = 1 para baixo ou -1 para cima	  var pos  = lista.selectedIndex	  var arrOption = lista.options;	  if((pos <= 0 && direcao == -1)||( pos >= arrOption.length && direcao == 1)) return;	  for(i=0; i<arrOption.length; i++){		 if(i == pos){			var item = new Option(arrOption[i+direcao].text, arrOption[i+direcao].value, false, false);			var item2 = new Option(arrOption[i].text, arrOption[i].value, true, true);			arrOption[i] = item;			arrOption[i+direcao] = item2;		 }	  }	  //lista.options = arrOption;	  lista.selectedIndex = (pos+direcao);   }   function setCombo(idOption){	document.forms.elements[nomeSelect].selected = true;	/*if( idOption != ''){	  if(document.all){		   document.all[idOption].selected = true;	  }	  else{		   document.getElementById(idOption).defaultSelected = true;	  }	}*/   }   function setCombo(idOption){	  try{		 if(idOption != '' && idOption != -1)			document.getElementById(idOption).selected = true;	  }	  catch(ex){}   }   function setRadio(idOption){	  try{		 if(idOption != '' && idOption != -1)			document.getElementById(idOption).checked = true;	  }	  catch(ex){}	     }</script></head><body><form name="form1" method="post" action="">  <table width="91%" height="345" border="0" cellpadding="0" cellspacing="0">	<tr> 	  <td width="18%"> <select name="txtUsuarios" size="10" multiple id="txtUsuarios">		  <option>teste</option>		  <option>teste1</option>		  <option>teste2</option>		  <option>teste3</option>		</select></td>	  <td width="8%"><p> 		  <input name="submit" type="submit" id="submit" value=">>" onClick="transferOption(txtUsuarios, txtAlocUsuarios)">		  <br>		  <br>		  <input type="submit" name="Submit2" value="<<" onClick="transferOption(txtAlocUsuarios,txtUsuarios)>		</p>		<p> </p></td>	  <td width="38%">	  </td>	  <td width="74%"><select name="txtAlocUsuarios" size="10" multiple id="select">		</select></td>	</tr>  </table></form></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ótimo script, mas quando mando inserir no banco, só insere o último usuário transportado. Ex: Existem 4 usuários no select da esquerda, quando tranporto os 4 para o select da direita, só insere no banco o usuário 4 os outros 3 não são inseridos, utilizo o php, como resolvo isso ?

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.