IE6でaタグにonClickを書く時の注意点


チキンタツタが食べたーい!
ということで、この土曜日のお昼に買いにいきました。
やっぱりウマイですね、レギュラーメニューじゃないのが不思議です。
コスト的なものでしょうか?

さて本題は、IE6でおこるバグのお話です。
よくフォームの登録ボタンなどを画像にするために、aタグのhrefにjavascript:void(0)を入れて、onClickでサブミットさせることが多いです。
なのですが、先日ふとIE6で試したら、動かない。
IE7やFirefoxだと無事動くのに・・・。


問題のソースは
<a href="javascript:void(0);" onClick="document.myForm.submit();">
<img src="img/hogehoge.jpg" alt="Submit!">
</a>
こんな感じ。
動くはずなのにと思うのですが、IE6にはバグがあるようで、
<a href="javascript:void(0);" onClick="document.myForm.submit(); return false;">
<img src="img/hogehoge.jpg" alt="Submit!">
</a>
のように、return false;を返してあげないと動かないようです。
ちなみに、hrefにjavascript:void(0)を入れなければ普通に動くようです。
組み合わせが悪いんでしょうか?

昔はhrefに#を入れたりしましたが、それだと一瞬だけ画面の一番上に飛んでいったりするので論外ですし。
こういう場合は、onClickにreturn false;を入れた方がよさそうですね。

コメントを残す