Io lo farei così.
Non è la soluzione migliore ma secondo me è quella più gestibile.
codice:<script src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> //<![CDATA[ $(document).ready(function() { $('a.toggleLink1').click(function() { $('.toggle2').hide('slow'); $('.toggle1').toggle('slow'); $('a.toggleLink1').html('[img]images/frecc-up.png[/img]'); $('a.toggleLink2').html('[img]images/frecc.png[/img]'); }); $('a.toggleLink2').click(function() { $('.toggle1').hide('slow'); $('.toggle2').toggle('slow'); $('a.toggleLink2').html('[img]images/frecc-up.png[/img]'); $('a.toggleLink1').html('[img]images/frecc.png[/img]'); }); }); </script> <style> .toggle1{ display:none; } .toggle2{ display:none; } </style> <input class="input" type="text" name="tipocliente" required="tipo cliente" placeholder="tipo cliente" value="" onfocus="chngColor(this);" /> <p class="info-p">[img]images/frecc.png[/img] </p> <div class="toggle1 toggle"> Testo del div nascosto</p></div> <input class="input" type="text" name="piva" required="* partita iva" placeholder="* partita iva" value="" /> <p class="info-p">[img]images/frecc.png[/img]</p> <div class="toggle2 toggle"> Testo del div nascosto</p></div>