Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    59

    problema con valore restituito dalla listbox

    nel mio metodo javascript non riesco a recuperare il valore dalla listbox.
    il codice html viene generato dinamicamente con php e questo è il risultato.....
    codice:
    <form action="provaGrafico.php" method="GET" enctype="text/plain" name="form" id="form" onSubmit="return conferma(this)" >
    
    <div id='titolo' >Selezione mire </div><table><tr><td align ='right'>1 <select name='mire[]' id='mire1' ><option value=''></option>
    <option>12</option>
    <option>13</option>
    </select></td><td align ='right'>2 <select name='mire[]' id='mire2' ><option value=''></option>
    <option>34</option>
    <option>23</option>
    </select></td><td align ='right'>3 <select name='mire[]' id='mire3' ><option value=''></option>
    <option>11</option>
    <option>45</option>
    in pratica ho diverse listbox con alcuni valori nel menu a tendina.....
    nella funzione conferma così definata vorrei poter sapere il valore selezionato nel menu a tendina...
    codice:
    function conferma(campo){
    for (i=1;i<10;i++){
    	var mira="mire"+i;
    	alert(document.getElementById(mira).selectedIndex.value); 
    }
    lo so che quel for è bruttissimo ma ho sempre 9 listbox, sopra ne ho riportate solo alcune per rendere più leggibile il tutto. Inoltre l'id di ciascuna mira è sempre mire+un indice crescente che parte da 1.
    ho provato anche a scrivere
    codice:
    alert(document.getElementById("mire1").selectedIndex.value);
    e selezionare un valore nella prima listbox, ma il valore restituito è undefined...

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    59
    ok mi sono risposto da solo....in pratica nel menu a tendina in ciascuna option non definisco alcun value quando lo creao, e quindi quando poi faccio la stampa giustamente mi stampa undefine....mendre se faccio la stampa dell'indice mi restituisce il valore corretto dell'indice.
    Ho ancora un problema...non riesco ad accedere ad ogni singola listbox....
    codice:
    for (i=0;i<10;i++){
          var mira="mire"+i;
          var indice = document.getElementById(mira).selectedIndex; 
          if(indice==0)
    	alert ("selezionare almeno una misura dal menu a tendina");
    }
    i nomi delle singole listbox sono "mire1","mire2","mire3" ecc .. fino alla 9...
    il problema e che qui mi da errore..
    document.getElementById(mira).selectedIndex;

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    59
    ok risolto...facevo il for che partiva da 0 al posto che da uno, è non c'era nessuna listbox con id=mire0.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.