http://www.dynamicdrive.com/ で拾えるddsmoothmenu.jsだけど、残念ながらIE6には未対応である。
IE6で動かしたところ、JQueryのanimateが微妙に動かないためにドロップダウンメニュー表示がされなかったりするケースがあるので、animateを置換えて無理矢理動作させる。
ついでにコンボボックスのZ-IndexがIE6だとおかしい(有名なやつ)ので、それも非表示っていう大味な対処をする。

ドロップダウンメニュー表示のところ

$targetul.css({left:menuleft+"px",width:header._dimensions.subulw+'px'}).animate({height:'show',opacity:'show'}, ddsmoothmenu.transition.overtime)

if (smoothmenu.detectie6) {
	if (smoothmenu.detectie6) $('select').each(function(){ $(this).css('visibility', 'hidden'); })
	$targetul.css({left:menuleft+"px", width:header._dimensions.subulw+'px', display:'block', visibility:'visible'})
} else {
	$targetul.css({left:menuleft+"px",width:header._dimensions.subulw+'px'}).animate({height:'show',opacity:'show'}, ddsmoothmenu.transition.overtime)
}

ドロップダウンメニュー非表示のところ

$targetul.animate({height:'hide', opacity:'hide'}, ddsmoothmenu.transition.outtime)

if (smoothmenu.detectie6) {
	$('select').each(function(){ $(this).css('visibility', 'visible'); })
	$targetul.css({display:'none', visibility:'hidden'})
} else {
	$targetul.animate({height:'hide', opacity:'hide'}, ddsmoothmenu.transition.outtime)
}

IE6早くなくなんないかねー

 タイトルに書いたことを実現するのに、Railsだとobserve_fieldっていうのを使うと楽勝なんだけど、これがActiveScaffoldで動的ロードするFormにあるコンボボックスだと、AJAXでロードする情報のなかにJavaScriptを書くことになってしまい動かないっていう罠。

 AJAXのレスポンスをinnerHTMLにぶち込んでごにょごにょとかそういう話もググれたんだけど、ActiveScaffoldだけにその辺自由度なく微妙。

 そこで苦肉の策として、Helperに「連動元コンボボックスのカラム名_form_column(record, field_name)」メソッドをオーバーライドしてSELECTタグを上書きしつつ、onchangeイベントでコンボボックスの中身をJavaScriptで強制書き換えするっていう何ともいえない香ばしい方法で対処する。

 ActiveScaffoldのドキュメントのそれっぽいところには「send_form_on_update_column」とかいかにもなメソッドがあるんだけど、悲しいかな 2.4以降に実装予定ということみたいだ。

 いやActiveScaffold超便利なんですけどね。用意された枠内でやってる分には。