Visualizzazione risultati 1 fino 5 di 5

Discussione: Seleziono "Altro" da select e faccio comparire un campo

  1. #1
    adminreluca non è connesso Utente
    Data registrazione
    06-03-2006
    Messaggi
    112

    Predefinito Seleziono "Altro" da select e faccio comparire un campo

    Ciao Ragazzi...
    ho una pagina bella lunga scritta in php, ma ho un problemino, mi trovo ad avere una select dove vengono riportati alcuni valori, se in questa select indicizzo una voce che recita "Altro" vorrei far comparire come lo si seleziona un campo di testo dove poter inserire il dato non in elenco.

    come si fa?

  2. #2
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Potresti farlo in JavaScript, ma sappi che se un utente ha JS (JavaScript) disattivato (anche se è molto raro) non può visualizzare il campo...

  3. #3
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,766

    Predefinito

    Per quelli che non supportano javascript, potresti fare un redirect a
    Codice PHP:
    $_SERVER['PHP_SELF'].'?altro='
    Poi, su PHP, se la pagina ha il parametro $_GET['altro'], stampare il nuovo campo. (nota che la pagina si deve ricaricare, quindi devi mantenere tutti gli eventuali dati immessi precedentemente dall'utente!).

    Codice PHP:
    <?php
    ...form
    if(isset($_GET['altro']))
    echo
    '<input type="text" ...>';
    ...
    form
    ?>
    Ciao!
    Ultima modifica di alemoppo : 09-11-2012 alle ore 13.54.15

  4. #4
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Io consiglio di inserire un input e nasconderlo con JS.
    Quindi: chi ha JS non vede il campo, mentre chi non ce l'ha lo deve vedere perché JS non può levarlo.
    Poi, tramite PHP, vedi se è stato selezionato "Altro" e in quel caso prendi in considerazione l'input.
    Se ti fai sentire ti posso spiegare come fare!

  5. #5
    adminreluca non è connesso Utente
    Data registrazione
    06-03-2006
    Messaggi
    112

    Predefinito

    Nel caso servisse a qualcuno ho usato questo codice che ho trovato su un altro forum:

    Codice PHP:
    <script language="javascript">
    function
    toggleMe(obj, a){
    var
    e=document.getElementById(a);
    if(
    obj=="due"){
    e.style.display="block";
    }else{
    e.style.display="none";
    }
    }
    </script>


    <form name="form">
    Scegli uno dei 2 casi:
    <!--Se selezioni caso 1 non appare niente
    se selezioni caso 2 appare la tabella con l'altro campo a selezione multipla
    -->
    <select name="prova" onchange="toggleMe(this.options[this.selectedIndex].value, 'esempioInfo')">
    <option value="" selected>- Seleziona</option>
    <option value="uno" >caso 1 </option>
    <option value="due">caso 2</option>
    </select>

    <div id="esempioInfo" style="display: none;">
    <table width="100%" border="1" cellspacing="2" cellpadding="4" >
    <tr class="scomparsa">
    <td class="form" width="45%">hai selezionato caso 2, sei convinto?</td>
    <td>
    <select name="prova2" class="form1">
    <option value="" selected>- Seleziona</option>
    <option value="si">si</option>
    <option value="no">no</option>
    </select>
    </td>
    </tr>
    </table>
    </div>
    </form>

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •