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

    E' possibile non avere due funzioni per fare lo stesso lavoro?!

    Ciao ragazzi sto da poco studiando javascript e incappo in 1sacco di problemi...ad esempio ho il seguente codice che deve farmi comparire 2 campi della form se seleziono "cane" nel primo campo, il problema è che devono comparire tutte e due e non una sola:

    codice:
    <html>
    <head>
    <script language="javascript">
    
    function elemento(obj, a)
    {
    var e = document.getElementById(a);
    if(obj=="cane")
    	e.style.display="block";
    else
    	e.style.display="none";
    }
    </script>
    </head>
    <body>
    
    
    <h3>Form di inserimento</h3></p>
    
    <form method="POST" action="inserimento.php" name="modulo">
    <table>
    
    <tr>
    <td align="right">
    Inserisci il tipo di animale che possiedi:</td>
    <td>
    <select name="immobile" onChange="elemento(this.options[this.selectedIndex].value, 'elemento1');">
    <OPTION value=cane>Cane</option>
    <OPTION value=gatto>Gatto</option>
    </select>
    </td>
    </tr>
    
    <tr>
    <td align="right">
    Nome animale:</td>
    <td>
    <input type="text" name="locali" id="elemento1" style="display:none"></td>
    </tr>
    
    <tr>
    <td align="right">
    Razza:</td>
    <td>
    <input type="text" name="locali" id="elemento1" style="display:none"></td>
    </tr>
    
    
    </table>
    </form>
    </body>
    </hmtl>
    La funzione elemento che viene richiamato alla selezione del primo campo deve far aprire tutte e due i campi che ci sono dopo però me ne apre soltanto uno..

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    <html>
    <head>
    <script language="javascript">

    function elemento(obj)
    {
    var el = document.getElementsByTagName('input');
    for(i=0; i<el.length; i++){
    if(el[i].getAttribute("type") == 'text' && obj=='cane'){
    el[i].className='mostra';
    }else{el[i].className='nascondi'}
    }
    }
    </script>
    <style>
    .nascondi{display:none;}
    .mostra{display:block;}
    </style>
    </head>
    <body>


    <h3>Form di inserimento</h3></p>

    <form method="POST" action="inserimento.php" name="modulo">
    <table>

    <tr>
    <td align="right">
    Inserisci il tipo di animale che possiedi:</td>
    <td>
    <select name="immobile" onChange="elemento(this.options[this.selectedIndex].value);">
    <OPTION value=cane>Cane</option>
    <OPTION value=gatto>Gatto</option>
    </select>
    </td>
    </tr>

    <tr>
    <td align="right">
    Nome animale:</td>
    <td>
    <input type="text" name="animale" id="animale" classe="nascondi"></td>
    </tr>

    <tr>
    <td align="right">
    Razza:</td>
    <td>
    <input type="text" name="razza" id="razza" classe="nascondi"></td>
    </tr>


    </table>
    </form>
    </body>
    </hmtl>
    Regola assoluta imprescindibile gli id devono essere univoci

    P.S. Prima si studia poi si applica non il contrario
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Ti ringrazio tantissimo, sei proprio in gamba!purtroppo io sto facendo una fatica matta a capire x bene javascript...ho preso un libro in biblioteca e piano piano me lo studio bene..grazie mille ancora

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