Problema gestione liste in js

Discussione in 'Javascript' iniziata da bobbyred, 17 Marzo 2016.

  1. bobbyred

    bobbyred Nuovo Utente

    Registrato:
    22 Gennaio 2016
    Messaggi:
    14
    Mi Piace Ricevuti:
    1
    Punteggio:
    3
    Ciao a tutti,
    ho un problema penso stupido ma che mi sta mandando al manicomio.

    In base alla selezione di un valore da una lista, seleziono il contenuto di un div nascosto con id=valore e inserisco tale contenuto in un altro div.

    Funziona ma dopo aver selezionato correttamente il valore, la lista mi si resetta al valore iniziale.

    Posto il codice
    HTML
    Codice:
    <form id="form1" name="form1" method="post" action="">
    	<span class="tit1">Seleziona un utente</span>
    	<select name="ListUsr" id="ListUsr">
    		<option value="" selected="selected">Seleziona --&gt;</option>
    		<option value="474128">Rossi Roberto(474128)</option>
    		<option value="RossiA">Rossi Roberto Amministratore(RossiA)</option>
    		<option value="RossiG">Rossi Roberto Gestore(RossiG)</option>
    	</select>
    	<input type="submit" name="vedi" id="vedi" value="Vedi" onclick="javascript:GetPwd();"/>
    </form>
    <div id="474128" style="display:none;">pippo</div>
    <div id="RossiA" style="display:none;">paperino</div>
    <div id="RossiG" style="display:none;">pluto</div>
    <div id="risult"></div>
    
    JAVASCRIPT
    Codice:
    function GetPwd() {
    	if (ListUsr.options[ListUsr.selectedIndex].value == "") {
    		alert("Non hai selezionato nessun utente");
    	} else {
    		document.getElementById("risult").innerHTML = document.getElementById(ListUsr.options[ListUsr.selectedIndex].value).innerHTML;
    	}
    	return(true);
    }
    
    Grazie a mi darà una mano.
    Roberto
     
  2. f107

    f107 Utente Attivo

    Registrato:
    7 Agosto 2012
    Messaggi:
    181
    Mi Piace Ricevuti:
    4
    Punteggio:
    18
    Occupazione:
    programmatore
    Località:
    Roma
    Hai messo tutto in un form, quindi quando fai click sull'input submit questo ricarica la pagina in post.
    Per evitarlo o fai cosi:
    HTML:
    <form id="form1" name="form1" method="post" action="">
    	<span class="tit1">Seleziona un utente</span>
    	<select name="ListUsr" id="ListUsr">
    		<option value="" selected="selected">Seleziona --&gt;</option>
    		<option value="474128">Rossi Roberto(474128)</option>
    		<option value="RossiA">Rossi Roberto Amministratore(RossiA)</option>
    		<option value="RossiG">Rossi Roberto Gestore(RossiG)</option>
    	</select>
    	<input type="submit" name="vedi" id="vedi" value="Vedi" onclick="javascript:GetPwd(event);"/>
    </form>
    <div id="474128" style="display:none;">pippo</div>
    <div id="RossiA" style="display:none;">paperino</div>
    <div id="RossiG" style="display:none;">pluto</div>
    <div id="risult"></div>
    
    e js:
    Codice:
    function GetPwd(e) {
    	e.preventDefault();
    	if (ListUsr.options[ListUsr.selectedIndex].value == "") {
    		alert("Non hai selezionato nessun utente");
    	} else {
    		document.getElementById("risult").innerHTML = document.getElementById(ListUsr.options[ListUsr.selectedIndex].value).innerHTML;
    	}
    	
    }
    
    Praticamente "cancelli" l'evento che si dovrebbe scatenare.

    Oppure semplicemente cambi il type dell'input da submit a semplice button e il tutto funziona.

    Spero ti sia utile.
    Ciao ciao
     
Sto caricando...

Condividi questa Pagina