次のコードが IE8 で機能しないのはなぜですか?
<select>
<option onclick="javascript: alert('test');">5</option>
非常に奇妙です - IE8 ではアラートが表示されません。左隅にもエラーアイコンが表示されません。もちろんFFやOperaでも動きます。何か案は?
次のコードが IE8 で機能しないのはなぜですか?
<select>
<option onclick="javascript: alert('test');">5</option>
非常に奇妙です - IE8 ではアラートが表示されません。左隅にもエラーアイコンが表示されません。もちろんFFやOperaでも動きます。何か案は?
onclick
要素にハンドラーを置くの<option>
は....私には奇妙に思えます。onchange
それを のより一般的なイベントに切り替えたいと思うかもしれません<select>
。そこからやりたいことは何でもできます。これは、選択に対してやりたいことを行う「受け入れられた」方法です。そうは言っても、そのjavascript:
部分を削除してみてください。href
これは、たとえばリンクで Javascript を実行している場合にのみ必要です。onclick
ハンドラーはJavaScript を想定しています。
試してみましたか:
onclick="alert('test');"
javascript: プレフィックスは必要ないことを確認してください。
IE のすべてのバージョン (6、7、8) は、オプション要素のイベント ハンドラーをサポートしていません。
これは (かなり) よく知られたバグであり、IE チームは修正を急いでいないことを示しています。:-(
繰り返しになりますが、Opera、Safari、および Chrome はすべて、オプションのイベント ハンドラーのサポートが制限されているか、まったくサポートされていません。
オプションのイベントの欠如:バグ 280
(関連) オプションのスタイルの欠如:バグ 281
「Edge」(Windows 10 の IE12 を考えてください) は現在、この問題がプレビュー リリースで修正されていることを示していることに注意してください。