JavaScriptで<OPTION>追加後の表示を統一するには?

[上に] [前に] [次に]
ます [E-Mail] 1999/12/16(木) 17:09:46
JavaScriptで、配列の中身を<SELECT><OPTION>に追加しています。
追加自体は成功しているのですが、その後の表示がおかしいので、
識者の皆様、お知恵をお貸しください。

IE(IE5)では、コンボボックスをクリックすると、
追加した要素すべてを縦スクロールなしで表示できるのですが、
NN(NN4.05/NN4.6)では、1行のみが表示され、縦スクロールして
しまっています。
(<SELECT>のサイズ指定はしていません)
そこで、ブラウザの「再読込み」ボタンを押してから
コンボボックスをクリックすると、IEと同じように表示
してくれるようになります。
以下のように、Option オブジェクトを new する方法と
しない方法を試してみましたが、どちらも同じでした。

NNとIEで動作を同じにする方法をご存知の方が
いらっしゃいましたら、ご教授ください。

以下のようなソースを作成しています。

<HTML>
<head>
<script language="javascript">

    function splitStr(count){
        msname = document.test.in1.value.split('@@');
        for(i=1; i<=count; i++){
            document.test.combo1.options[i] = new Option(msname[i-1], msname[i-1]);
        };
    };

    function splitStr2(count){
        msname = document.test.in1.value.split('@@');
        for(i=1; i<=count; i++){
            document.test.combo2.options.length = i +1;
            document.test.combo2.options[i] .text = msname[i-1];
            document.test.combo2.options[i] .value = msname[i-1];
        };
    };
</script>
</head>
<body>
<form name="test">
<table>
<tr><td>in</td><td> <input type="text" name="in1"></td></tr>
<tr><td>select</td><td><select name="combo1">
<option value="">選択してください</option>
</select></td></tr>
<tr><td>select2</td><td><select name="combo2">
<option value="">選択してください2</option>
</select></td></tr>
</table>
<input type="button" name="b1" value="区切れ!" onClick=splitStr(3)>
<input type="button" name="b2" value="区切れ!2" onClick=splitStr2(3)>
</form>
</body>
</HTML>

Mugi [E-Mail] [HomePage] 1999/12/16(木) 18:05:49
ねすけではリサイズしないとこうなってしまします。
僕はこのようにしています。
http://hp.vector.co.jp/authors/VA013453/js/selectbox.htm

ます [E-Mail] 1999/12/17(金) 13:55:44
[[解決]]
さっそくやってみたところ、思ったような動作ができました。
Mugi さん、ありがとうございました。<(_ _)>
(resize のために画面が blink するのは仕方がないですよね。)

[上に] [前に] [次に]