お世話様です。
まったくの初心者です。
function todofukenSet(){
//オプションタグを連続して書き換える
for ( i=1; i<74; i++ ){
//選択した都道府県によって分岐
switch (document.selbox.todofuken.selectedIndex){
case 0: document.selbox.kuchoson.options[i].text="";break;
case 1: document.selbox.kuchoson.options[i].text=tokyo_todofuken[i];break;
case 2: document.selbox.kuchoson.options[i].text=kanagawa_todofuken[i];break;
case 3: document.selbox.kuchoson.options[i].text=chiba_todofuken[i];break;
case 4: document.selbox.kuchoson.options[i].text=saitama_todofuken[i];break;
case 5: document.selbox.kuchoson.options[i].text=ibaraki_todofuken[i];break;
case 6: document.selbox.kuchoson.options[i].text=tochigi_todofuken[i];break;
case 7: document.selbox.kuchoson.options[i].text=gunnma_todofuken[i];break;
case 8: document.selbox.kuchoson.options[i].text=yamanashi_todofuken[i];break;
case 9: document.selbox.kuchoson.options[i].text=nagano_todofuken[i];break;
case 10: document.selbox.kuchoson.options[i].text=shizuoka_todofuken[i];break;
}
}
抜粋になってしまいますが、
以上の文で、フォームにある<select>の<option>項目を、複数の配列へ分岐させて表示しています。
ですが、配列の項目数が違うため、74より少ない項目に関しては、
「undefined」と表示されてしまいます。
i<74;
の部分を、「配列ごとの数を読みとって、その数ごとに表示」
という指示にするには、どのように記述すれば良いでしょうか。
ご教授ください。
何卒よろしくおねがいいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
動作確認していませんが、この記述でいかがですか
function todofukenSet(){
var pref = document.selbox.todofuken.selectedIndex;
var opts = document.selbox.kuchoson.options;
var citiesList = [
[], // 後の処理を簡単にするためのダミー情報
tokyo_todofuken,
kanagawa_todofuken,
chiba_todofuken,
/*以下略*/
];
var cities = citiesList[pref];
for (var i=0; i<cities.length; i++) opts[i].text = cities[i];
for (var i=cities.length; i<74; i++) opts[i].text = "";
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript jsで、switch文で書かれた分をif文にできませんか。 1 2022/07/28 15:10
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- JavaScript 【jquery】EasyUIのSubGridにMySQLのテーブルデータを表示&編集にしたい 5 2022/05/02 13:10
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- JavaScript html javascriptにてWeb SQLを操作したい。 2 2022/12/16 17:43
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptのdocument.allにつ...
-
Null またはオブジェクトではあ...
-
JavaScript window.openで開く...
-
window.onloadを複数実行したい...
-
VBAでIEのボタンを押してメッセ...
-
showModalDialogで開いた画面を...
-
javascriptの基本的なことだと...
-
ie操作 フレームのURLが...
-
FireFoxのjavascriptで自動でキ...
-
ActiveXobjectが作成できない
-
JavaScriptで決まった「時刻」...
-
C#テキストボックスの文字を配...
-
Boolean型配列中のTrueの有無を...
-
google apps scriptの終了のさせ方
-
関数でy=g(x)のgとは何の略です...
-
jspからjavascriptの変数引継ぎ
-
任意の座標をクリックさせるには
-
Linux バイナリ実行できない "...
-
javascriptでスロットゲームを...
-
window.openでタイトル名の指定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
codejump 模写コーディングgall...
-
このjavascriptのif文、条件式...
-
文字を一文字ずつ表示
-
DOM要素を削除しても、イベント...
-
FireFoxのjavascriptで自動でキ...
-
Javascriptのhtml出力についてa...
-
excle VBA とweb上の検索を利用...
-
Null またはオブジェクトではあ...
-
webページ上のTabキーの動き
-
XMLでのAttributeを持ったNode...
-
JavaScript window.openで開く...
-
ブラウザのウィンドウサイズに...
-
javascriptのdocument.allにつ...
-
javascriptの基本的なことだと...
-
responseTextについて
-
showModalDialogで開いた画面を...
-
iframeのソースを取得したい
-
removeEventListenerの必要性
-
クリッカブルマップのリンク部...
-
ラジオボタンをクリックしたい
おすすめ情報