- 締切済み
プルダウンに追加項目を加える方法
過去記事にあった下記のプルダウンを使用させて頂いております。 選択できる項目を「くだもの→りんご→●●」ともうひとつ追加 するにはどうしたらよいのでしょうか? どうぞよろしくお願いします。 <html> <head> <script> <!-- /* データ定義部(ここをDB検索結果から生成) */ var dataMain = new Array( new Array("1", "くだもの"), new Array("2", "やさい"), new Array("3", "さかな") ); var dataSub = new Array( new Array( new Array("1", "りんご"), new Array("2", "みかん"), new Array("3", "いちご") ), new Array( new Array("1", "にんじん"), new Array("2", "だいこん"), new Array("3", "きゅうり") ), new Array( new Array("1", "さば"), new Array("2", "いわし"), new Array("3", "さんま") ) ); // プルダウンを初期化 function initSel() { var selMain = document.forms[0].elements["selMain"]; // メインのプルダウンを初期化 setDataToSel(selMain, dataMain); // 先頭を選択 selMain.selectedIndex = 0; // 先頭を選択したのと同じ処理 changeSel(); } // プルダウンを選択したときの処理 function changeSel() { var selMain = document.forms[0].elements["selMain"]; var selSub = document.forms[0].elements["selSub"]; // メインのプルダウンの選択値によりサブの選択肢データを取得 var data = dataSub[selMain.selectedIndex]; // サブのプルダウンの選択肢を入れ換え setDataToSel(selSub, data); } // データを選択肢にセット function setDataToSel(sel, data) { // 選択肢をいったんクリア for(var i = 0 ; i < sel.options.length ; i++) { sel.options[i] = null; } // 新しい選択肢を作る for(var i = 0 ; i < data.length ; i++) { var dt = data[i]; sel.options[i] = new Option(dt[1], dt[0]); } } //--> </script> </head> <body onLoad="initSel()"> <form> <p> メイン: <select name="selMain" size="1" onChange="changeSel()"></select> </p> <p> サブ: <select name="selSub" size="1"></select> </p> </form> </body> </html>
- みんなの回答 (2)
- 専門家の回答
お礼
早速ご回答頂きありがとうございます。 選択できるプルダウンをもうひとつ追加する場合、どのようにコードを 書いたらよいのでしょうか? もし差し支え無ければお教え下さいますようお願い致します。