Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    passare valore option select con selezione multipla

    ciao ragazzi ...
    sto impazzendo con una "cosaccia" che mi ha fatto perdere un bel po' di tempo ... io mi sono arreso e vi chiedo gentilmente una mano

    ho il seguente form

    codice:
    <form name="nomeForm" onSubmit="view_frame.location='pagina.asp?liste ='+vliste ">
    <select name="liste" size="4" multiple>
    	<option value="aaa">aaa</option>
    	<option value="bbb">bbb</option>
    	<option value="ccc">ccc</option>
    	<option value="ddd">ddd</option>
    	<option value="eee">eee</option>
    </select>
    <SCRIPT LANGUAGE="JavaScript">
    var vliste ='';
    var o=document.nomeForm.liste
    for (var i=0; i<o.length; i++) {
    	if (o.options[i].selected=true)   {
    		vliste +=o.options[i].value;
    	}
    }
    </SCRIPT>
    </form>
    con questo in pratica mi seleziona tutte le option della select, e mi passa tutti i valori in "?liste ='+vliste" ...

    ma non riesco proprio a capire perchè se seleziono SOLO 2 o 3 option alla fine invece mi passa il valore di tutte!

    chi mi illumina per piacere?
    chi non risica ... non rosica !!!

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    = e' l'operatore di assegnazione, quello di confronto e' ==

    puoi scrivere anche:

    if (o.options[i].selected) {

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Originariamente inviato da br1
    = e' l'operatore di assegnazione, quello di confronto e' ==

    puoi scrivere anche:

    if (o.options[i].selected) {

    ciao
    ciao br1

    in questa maniera però non mi passa il valore/i
    chi non risica ... non rosica !!!

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Chiaramente il codice da te postato e' incompleto ma pensavo che lo avessi semplificato...

    manca un oggetto che, cliccato, invii il form;
    manca la funzione che racchiude il codice javascript da invocare al momento dell'invio;
    manca l'indicazione del carattere che dovrebbe separare gli elementi nella stringa ottenuta;
    manca la precisazione se il form debba essere inviato anch'esso e a quale pagina.

    Mi sono limitato quindi ad indicarti il particolare che impediva di ottenere, se tutto il resto fosse stato a posto, la lista che volevi.

    Ti allego un esempio completo e funzionante
    codice:
    <SCRIPT LANGUAGE="JavaScript">
    function trasmetti() {
    	var vliste ='';
    	var o=document.nomeForm.liste
    	for (var i=0; i<o.length; i++) {
    		if (o.options[i].selected) {
    			vliste += (vliste)?',':'';
    			vliste += o.options[i].value;
    		}
    	}
    //	alert(vliste)
    	view_frame.location.href='pagina.asp?liste='+vliste;
    }
    
    </SCRIPT>
    ...
    <body>
    <form name="nomeForm" action="http://localhost/test.asp" 
    onSubmit="trasmetti();">
    <select name="liste" size="4" multiple>
    	<option value="aaa">aaa</option>
    	<option value="bbb">bbb</option>
    	<option value="ccc">ccc</option>
    	<option value="ddd">ddd</option>
    	<option value="eee">eee</option>
    </select>
    <input type=submit>
    </form>
    </body>
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    sì br1 ... dallo script ho "estrapolato" solo la parte che mi dava problemi

    cmq provo il tuo suggerimento ... ti faccio sapere :bubu:
    chi non risica ... non rosica !!!

  6. #6
    br1 grazie ... tutto ok adesso!

    poi ti farò sapere per cosa mi è servito
    chi non risica ... non rosica !!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.