I have exhaustively tested all possible scenarios using prototype, but I am unable to get my busy indicator to show no matter what I do. Despite cross-browser testing, I've had no luck.
<?php
echo $ajax->submit('Submit', array('url'=> array('controller'=>'records', 'action'=>'add'), 'update' => 'ajax_div',
'evalScripts' => true,
'before' => $this->Js->get('#busy-indicator')->effect('show', array('buffer' => false)),
'complete' => $this->Js->get('#busy-indicator')->effect('hide', array('buffer' => false))));
?>
<?php echo $this->Html->image('ajax-loader.gif', array('id'=>'busy-indicator')); ?>