codice:<script type="text/javascript"> function displayForm(c) { if (c.value == "1") { document.getElementById("italiano").style.display = 'block'; document.getElementById("straniero").style.display = 'none'; } else if (c.value == "2") { document.getElementById("italiano").style.display = 'none'; document.getElementById("straniero").style.display = 'block'; } else {} } </script> <form> <input value="1" type="radio" name="formselector" onClick="displayForm(this)">Italiano <input value="2" type="radio" name="formselector" onClick="displayForm(this)">Straniero <table> <tr style="display:none;" id="italiano"> <td> <p>Citta <input type="text" id="citta" name="citta" value=""> </p> <p>Provincia <input type="text" minlength="16" id="prov" name="prov" value=""> </p> </td> </tr> <tr style="display:none;" id="straniero"> <td> <p>Nazione <input type="text" id="nazione" name="nazione" value=""> </p> </td> </tr> </table> </form>
Avevo provato anche io con quella soluzione, pero', essendo una capra in javascript, ommettevo lo style display: none e/o block, e mantenendo il dispaly visible e hidden me li faceva apparire e scomparire ma mi manteneva gli spazi vuoti anche quando non selezionavo nullac e la cosa non mi piaceva a livello estetico.
Ma se volessi che i due campi input della parte italiano fossero divisi da tr e td ?
Devo aggiungere una condizione allo script o basta che assegno a tr lo stesso valore ?
<tr style="display:none;" id="italiano">
Ma intanto grazie 1000 per l'aiuto![]()