旧それなりブログの跡地、画像やスタイルやJSなどが壊れてることがあります。

IEで複数行選択のselect要素を作る

2007年5月18日

javascriptのIE6用クロスブラウザ対応の話です。

仕事でjavascriptを使うと普段はスルーしていた
だるい部分をスルーできなくなり、必然的にこういう内容が多くなります。

普通の複数行選択select要素の作成方法

var select = document.createElement("select");
select.multiple = true;
alert(select.type); // "select-multiple"

XP-FireFox1.5とMac-Safari2で確認しました。

糞XP-IE6の場合

var select = document.createElement("<select multiple>");
alert(select.type); // "select-multiple";

multiple属性にtrueを入れる方法だと、クリックでの複数行選択はできるようになりますが
option.selectedにJSでtrueを入れる方法で複数行選択をしようとすると、最後の1行しか選択されない。

ここ↓のエントリーに無茶苦茶助けられました。感謝すぎる
それはBooks – DOM で複数選択可能なリストボックスを作成する(IE)
2hハマり
・・・てか、作業時間の半分ぐらいIEへの対応でつぶれれてるんだけど。