Event.observe(window, 'load', function(){
   $$('div.hideonload').invoke('hide');
   Event.observe($('state'), 'change', show_events);
});

function show_events()
{
   /* something to keep in mind:
     >>> $$('#events .ajaxindicator').first()
     <div id="events_indicator" class="ajaxindicator hideonload" style="display: none;">
  */
   new Ajax.Updater('events_placeholder', '/registration/events_for_state', {
      parameters: { state: $F('state') },
      onComplete: function() { $('events_indicator').hide(); },
      onLoading: function() { $('events_indicator').show(); }
   });

}