Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Div a comparsa su click mouse

    Ciao a tutti,
    ho un div che vorrei far visualizzare solamente se viene selezionata una determinata opzione di un campo select. Come posso fare?

  2. #2
    Uno secnario semplice, con un codice che non dovrebbe richiedere troppe spiegazioni, è questo:
    ======
    <form>
    <select onchange="bho(this.options[this.selectedIndex])">
    <option value="1" selected>opzione 1</option>
    <option value="2">opzione 2</option>
    </select>
    <div id="foo" style="display:none;">ciao</div>
    </form>

    <script>
    function bho(x){
    if(x.value=="2"){/*o qualsiasi altra condizione tu preferisca*/
    document.getElementById("foo").style.display="bloc k";
    }
    else{
    document.getElementById("foo").style.display="none ";
    };
    }
    </script>
    =====

  3. #3
    scusa la domanda ma questo script è compatibile con Firefox, Opera, etc.?

  4. #4
    Non ne scrivo di diversi :-)

  5. #5
    ho verificato con internet explorer 7, firefox, opera e tutto è ok. Ora provo con netscape e seamonkey. Grazie moltissime!

  6. #6
    Ho preso questo script e funziona alla grande
    L'ho applicato al mio e funziona solo c'e' ancora un piccolo problemino

    codice:
    <script>
    function bho(x){
    if(x.value=="Y"){
    document.getElementById("foo").style.display="block";
    }
    else{
    document.getElementById("foo").style.display="none";
    }}
    </script>
    <body>
    <form>
    <select onchange="bho(this.options[this.selectedIndex])">
    <option value="<?php echo $row_Recordset1['prova']; ?>" selected><?php echo $row_Recordset1['prova']; ?></option>
    <option value="Y" selected>SI</option>
    <option value="N">NO</option>
    </select>
    <div id="foo" style="display:none;">ciao</div>
    </form>
    Quando accedo alla pagina indipendentemente da quello che è selezionato nella select non mi compare nulla,logicamente xchè (style="display:none;") ma se tolgo questa stringa e lascio solo <div id="foo">ciao</div> e sulla mia select ho un'eco preso dal database "<?php echo $row_Recordset1['prova'];?>" uguale a N xchè la parola ciao me la mostra lo stesso,e per farla scomparire devo riselezionare NO quando xrò era gia selezionata?

    Spero di essermi spiegato

  7. #7
    up!!!


  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Premesso che non conosco il php pertanto non capisco cosa riporterà la prima option, sicuramente qui c'è un errore:
    codice:
    <option value="<?php echo $row_Recordset1['prova']; ?>" selected><?php echo $row_Recordset1['prova']; ?></option>
    <option value="Y" selected>SI</option>
    <option value="N">NO</option>
    Non puoi avere due selected.
    Poi da quello che ho capito, dopo averlo riletto 4 volte. (ma prima di pubblicare un annuncio/risposta la rilegge? :master: Molta gente non risponde perché non capisce)
    Domanda: tu vorresti che se nella select è selezionato no non mostri il div mentre lo mostri se selezionato si, giusto?
    Se la risposta è si potresti gestire il tutto lato server
    <div id="foo" <? qui scrivi il codice php che mostra o meno il div?>>ciao</div> lo stesso codice lo dovresti poi utilizzare per selezionare anche la option.
    Questa è solo un ipotesi, ma ritengo anche la strada più facile e più corretta.
    Se invece non è come ho capito, per semplificare metti la pagina online e posta il link.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Hai ragione sulla select avevo sbagliato a trascrivere

    codice:
    <select name="camere" id="camere" onchange="bho(this.options[this.selectedIndex])">
    <option value="<?php if($row_Recordset1['prova']=="Y") echo "Y"; else echo "N"; ?>">
                  <?php if($row_Recordset1['prova']=="Y") echo "SI"; else echo "NO";?>
                  </option>
                <option value="Y">SI</option>
                <option value="N">NO</option>
                </select>
    Hai capito bene (lo so ho spiegato come i cani )

    codice:
    Domanda: tu vorresti che se nella select è selezionato no non mostri il div mentre lo mostri se selezionato si, giusto?
    Ho provato a fare come mi hai detto ma non so se ho capito bene xchè continua a fare sempre come prima

    codice:
    <script>
    function bho(x){
    if(x.value=="Y"){
    document.getElementById("foo").style.display="block";
    }
    else{
    document.getElementById("foo").style.display="none";
    }}
    </script>
    <body>
    
    
    
      <select name="inse" id="inse" onchange="bho(this.options[this.selectedIndex])">
        <option value="<?php if($row_Recordset1['prova']=="Y") echo "Y"; else echo "N"; ?>">
          <?php if($row_Recordset1['prova']=="Y") echo "SI"; else echo "NO";?>
        </option>
        <option value="Y">SI</option>
        <option value="N">NO</option>
      </select>
    </p>
    <div id="foo" <?php if($row_Recordset1['prova']=="Y") echo "Y"; else echo "N";?> div align="center">ciao</div>
    </form>



  10. #10
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Come già ribadito non conosco il php, potrei scrivere delle cavolate che dovrai sistemare.
    codice:
    <script>
    function bho(x){
    if(x.value=="Y"){
    document.getElementById("foo").style.display="block";
    }
    else{
    document.getElementById("foo").style.display="none";
    }}
    </script>
    <body>
    
    
    
      <select name="inse" id="inse" onchange="bho(this.options[this.selectedIndex])">
        <?php if($row_Recordset1['prova']=="Y") 
         echo "<option value=\"Y\" selected>SI</option>Y</option>"; 
         else echo "<option value=\"Y\">SI</option>Y</option>"; ?>
          <?php if($row_Recordset1['prova']=="Y") 
         echo "<option value=\"N\" selected>NO</option>SI"; 
         else echo "<option value=\"Y\" selected>SI</option>Y</option>";?>
      </select>
    </p>
    <div id="foo" <?php if($row_Recordset1['prova']=="Y") echo "style=\"display:inline;\""; else echo "style=\"display:none;\"";?> div align="center">ciao</div>
    </form>
    Questo è il massimo che posso fare di php, e forse devi fare un ciclo for in php per la select. Spero tu abbia capito il concetto di più non saprei che fare.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.