I ended up with this.. <script type="text/javascript"> $(function() { $("#stateHolder > div").hide(); $("#stateList").change( function(){ var $el= $('#' + $(this).val() ); if ( $("#stateHolder > div:visible").length == 0) { $el.show('fast') } else{ $("#stateHolder > div:visible").hide('fast', function(){ $el.show('fast'); } ) } }); }); </script>
It seems to work well. I just want to add some effects to it, such as a fade or something. But this seems to do everything it should.