Newsgroup: it.comp.lang.javascript
Titolo: Popolare SELECT da valori selezionati in un'altra SELECT

Ciao a tutti,
mi trovo a dover popolare una select con i valori selezionati da un'altra.
Non so se il tutto sia fattibile utilizzando javascript.
Cerco qualche suggerimento.
Ecco il codice di partenza.
________________________________________________________________
<html>
<head>
<script language="JavaScript">
<!--
function quali() {
var myArray = new Array();
var myArray2 = new Array();
   for (var i = 0; i < document.form1.select.length; i++) { 
  // alert(document.form1.select.options[i].selected);
        if (document.form1.select.options[i].selected== true) {
		myArray[i]=document.form1.select.options[i].value;
		myArray2[i]=document.form1.select.options[i].text;
		//document.form1.select2.options[i].value="prova";
 
		     }   
				 }
		alert(myArray);
		alert(myArray2);
}
 
//-->
</script>
<title>select</title>
</head>
<body>
<form name="form1" method="post" action="">
  <select name="select" size="10" multiple>
    <option value="1">uno</option>
    <option value="2">due</option>
	 <option value="3">tre</option>
    <option value="4">quattro</option>
	 <option value="5">cinque</option>
    <option value="6">sei</option>
  </select>
  <input type="button" name="Pulsante" value="Pulsante" onClick="quali();">
  <select name="select2" size="10" multiple>
  </select>
</form>
</body>
</html>
____________________________________________________________________
Grazie per l'aiuto.
Marco
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it



 mi trovo a dover popolare una select con i valori selezionati da un'altra.
Su 
jsdir.com
 c'è un esempio, dacci un occhio.
Altrimenti spiega meglio: in che senso "popolare una select con i valori
selezionati da un'altra"? E' il classico rapporto regione-provincie? Oppure
vuoi estrarre un sottoinsieme di valori da una select e trasferirli in
un'altra?
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.
--

 un'altra?
Ciao,
esattamente la seconda che hai detto, cioč dovrei estrarre un sottoinsieme
di valori da una select e trasferirli in un'altra.
Grazie per la risposta 


 di valori da una select e trasferirli in un'altra.
La logica esattamente qual č?
Seleziono un valore e viene copiato in un'altra? Ne seleziono un'altro e
viene accodato all'altra?
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.
--

 viene accodato all'altra?
Ciao Cristiano,
ho letto l'articolo che mi hai consigliato,e ho trovato lo spunto che
cercavo. Grazie!
Mi rimane un problemino con i valori nulli, che vengono visualizzati nella
select che dovrebbe contenere solo i valori selezionati.
Ecco il codice:
____________________________________________________________________
<html>
<head>
<script language="JavaScript">
<!--
function quali() {
var myArray = new Array();
var myArray2 = new Array();
for (var i = 0; i < document.form1.select.length; i++) { 
if (document.form1.select.options[i].selected==true) {
myArray[i]=document.form1.select.options[i].value;
myArray2[i]=document.form1.select.options[i].text;
} 
}
//alert(myArray);
//alert(myArray2);
   with (document.form1.select2)
     {
     while (options.length > 0)
	  options[0]=null;
	 for (var i=0; i<myArray2.length; i++){
	     if ((myArray2[i]!="")&&(myArray[i]!="")){ 
      	        options[i]=new Option(myArray2[i],myArray[i])
    	       //options.selectedIndex=0;
		}
      }
}
}
//-->
</script>
<title>select</title>
</head>
<body>
<form name="form1" method="post" action="">
<select name="select" size="10" multiple>
<option value="1">uno</option>
<option value="2">due</option>
<option value="3">tre</option>
<option value="4">quattro</option>
<option value="5">cinque</option>
<option value="6">sei</option>
</select>
<input type="button" name="Pulsante" value="Pulsante" onClick="quali();">
<select name="select2" size="10" multiple>
</select>
</form>
</body>
</html>
______________________________________________________________
Hai qualche idea?
Grazie.


 Puoi farla meno arzigogolata:
[...]
Ho usato lo script per fare una cosa simile, aggiungere il valore della
select ad un input, su cui voglio prima scrivere del testo, però non mi
funziona. Dov'è l'errore su questo codice? Thanks:
<HTML><HEAD>
<SCRIPT language=JavaScript>
<!--
 function add() {
   var dF=document.form1;
   dF.input1.value;
      for (var i = 0; i < dF.select1.length; i++) {
        if (dF.select1.options[i].selected== true) {
nOp= new Option(dF.select1.options[i].text,dF.select1.options[i].value);
dF.input1.value= dF.input1.value + nOp;
                 }
          }
   }
//-->
</SCRIPT>
</HEAD>
<BODY>
<FORM name=form1><INPUT size=30 name=input1><SELECT name=select1>
<OPTION
  selected>uno</OPTION> <OPTION>due</OPTION>
<OPTION>tre</OPTION></SELECT>
<INPUT onclick=add(); type=button value=[+]></FORM></BODY></HTML>
-- 
     * b *
   *   y   *
 *   Piero   *
[/in medio stat virtus/]

 "change" della select?
Sarebbe interessante vedere le due soluzioni.
Grazie
-- 
     * b *
   *   y   *
 *   Piero   *
[/audaces fortuna iuvat/]

 </select>
Perfetto! Ora l'altra soluzione vien da sé :-)
<INPUT onclick="(this.form.input1.value=this.form.input1.value+this.form.select1.options.value);" type="button" value="add">
Sei stato gentile, grazie di nuovo. :-)
