Newsgroup: it.comp.lang.javascript
Titolo: Passaggio elementi select - STO IMPAZZENDO

Ciao a tutti è un vita che non riesco a sbloccarmi con questo script
(bastardo) che mi stà stressando la vita!
http://www.opent.it/romacinema/test/index.html
Il problema è nella funzione togli() che in pratica mi ritorna un
errore incomprensibile..
Qualcuno mi sà dare una mano??
Tnx!

 errore incomprensibile..
Beh, incomprensibile...dice esattamente "Sel.options[i]" has no properties,
riga 23...
	//ciclo
	for(i=0;i<numSel;i++) {
	//se è selezionata la stronco
		if (Sel.options[i].selected) {  Sel.options[i] = null; }
	//*IN OGNI CASO* aggiungo il value al tag hidden...ma se la hai appena
annullata????????
		document.forms['dettagli'].id_metadata.value += Sel.options[i].value +
",";
Così a naso (non ho visto il perché di questa function) basterebbe
invertire le 2 righe sopra.
-- 
"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.

No in effetti non deve aggiungere il valore se
(Sel.options[i][.selected) quindi ho aggiunto un continue;
Ma niente lo stesso!
function togli() {
	arr = new Array();
	Sel = document.forms['dettagli'].metadata;
	numSel = Sel.options.length;
	//document.forms['dettagli'].id_metadata.value = '';
	for(i=0;i<numSel;i++) {
		if (Sel.options[i].selected) {  Sel.options[i] = null; continue; }
		document.forms['dettagli'].id_metadata.value += Sel.options[i].value
+ ",";
	}
	alert(document.forms['dettagli'].id_metadata.value);
}
non mi visualizza l' ALERT come cazzarola è?!?!

 	for(i=0;i<numSel;i++) {
 for(i=Sel.options.length-1;i>=0;i--) {


Ok adesso pare che trovato l'elemento da ANNULLARE non valorizzi piu il
campo hidden..
Cavolo stò capendo che javascript non è il mio linguaggio preferito!
:\
function togli() {
	arr = new Array();
	Sel = document.forms['dettagli'].metadata;
	numSel = Sel.options.length;
	document.forms['dettagli'].id_metadata.value = '';
	 for(i=Sel.options.length-1;i>=0;i--) {


 campo hidden..
[CUT]
A occhio non vedo altri errori...qual č l'errore visualizzato? (ovviamente
stai usando un browser che visualizza correttamente gli errori, vero? Non
postare "errore riga 0 carattere 1" di IE ! ;-)
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.

:\
Non dire così. E' solo perché non l'hai studiato al CEPU. Io ho avuto
Adriana Lima come tutor. Capirai, avrò imparato 4 istruzioni messe in croce
di javascript, ma curiosamente ogni volta che mi metto a scrivere codice
per qualche strana associazione mentale mi aumenta la salivazione.
-- 
var SEI	= "1+5", NOVE = "8+1";
// dump TheAnswerToLifeTheUniverseAndEverything :
alert("Cosa ottieni moltiplicando "+
	eval(SEI)+" per "+eval(NOVE)+"? "+eval(SEI+"*"+NOVE));

Hai ragione adesso dovrebbe andare bene! Scusa ma stavo veramente
impazzendo .. avevo ale costole un debugger che mi stava pressando per
risolvere il problema!
Grazie per la pazienza! Ciao Cristiano!

Ragazzi mi ero illuso...c'è un difetto nello script..
http://www.opent.it/romacinema/test/index.html
In pratica se si aggiunge un valore tutto ok, poi però se s toglie un
option dalla lista che non sia l'ultimo aggiunto il campo HIDDEN viene
scritto male :((
Provate a spostare un option (a caso) e poi togliete una option che non
sia quella inserita..
Il campo hidden viene riscritto male per un problema di Ciclo!
Oddio mi sento male! Help!
sat...@gmail.com
 ha scritto:


 scritto male :((
Temo che il createElement non sia proprio il massimo, sia per IE che per
compatibilità...se cerchi se ne era parlato tempo fa, e se non ricordo male
l'unico modo cross-browser era usare new Option per aggiungere una nuova
option a una select.
 Vedi se questo può esserti d'aiuto:
 
http://www.criosoftware.it/default12.aspx
Attenzione anche al metodo push() che hai usato (non funzionante con IE
versione < 5.5) e il try-catch (non esistente in IE4)


Ragà ma come fate ad avere pazienza con javascript.. !?!? Cioè in
pratica sei dipendente dai trucchetti..
http://www.opent.it/romacinema/test/index.html
Cmq se prima c'erano qualche bug.. adesso non dà segni di vita..

 Cmq se prima c'erano qualche bug.. adesso non dà segni di vita..
Ammetto che non ho seguito tutto il thread, ma mi pare di aver capito che
il problema fondamentale è con la funzione "sposta". Prova un po' questo:
function sposta(){
	var partenza=document.forms['dettagli'].metadata_disponibili,
		arrivo=document.forms['dettagli'].metadata,
		els=partenza.options;
	for(i=0;i<els.length;i++){
		if(els[i].selected){
			els[i].selected=false;
			arrivo.appendChild(els[i--]);


 per qualche strana associazione mentale mi aumenta la salivazione.
O___O
ecco il _vero_ motivo per andare al cepu!!!
-- 
10/6/2005 | E' l' alba, finalmente!!!