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 するのは仕方がないですよね。)
[上に]
[前に]
[次に]