![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
javascriptが苦手な者で質問内容にさえ自身が無い質問です。
スケジュールを管理するフォームを作りたく、以下のようなものを書いてトライしています。
-----------------------------------
javascript部
-----------------------------------
function clear_select(day){
elem = "select_hour_" + day;
document.form_name.elem.selectedIndex = "--";
}
-----------------------------------
htmlのform部
-----------------------------------
<input id="Bot_Sch_20111001" name="Bot_Sch_20111001" type="button" onClick="clear_select('20111001')" >
<select id="select_hour_20111001" name="select_hour_20111001">
<option value="--">--</option>
<option value="01">1</option>
<option value="02">2</option>
↓
<option value="24">24</option>
</select>
<input id="Bot_Sch_20111002" name="Bot_Sch_20111002" type="button" onClick="clear_select('20111002')" >
<select id="select_hour_20111002" name="select_hour_20111002">
<option value="--">--</option>
<option value="01">1</option>
<option value="02">2</option>
↓
<option value="24">24</option>
</select>
以下30日程セレクターが続きます。
-----------------------------------
上記関数clear_selectの引数でフォームのエレメントを規定し、そのセレクターの値を書き換える事はできるのでしょうか?
可能ならどのような書き方をすべきなのかご教授いただけるとありがたいです。
No.1ベストアンサー
- 回答日時:
ポイントは
・formの要素はelements[要素のname]でつかめます
・selectedIndexは0から始まる数値でしめします
今回のケースだと同じような構造がつづくなら、
イベントをアタッチした方が汎用性がたかいでしょうね
たとえばこんな感じ
<script>
try{
document.addEventListener ('click',function(e){clickfunc(e)},true); //基本
}catch(e){
document.attachEvent('onclick',function(e){clickfunc(e)}); //IE
}
function clickfunc(e){
var t = (e.srcElement || e.target);
if(t.nodeName=="INPUT" && t.name && t.name.match("^Bot_Sch_")){
clear_select(t)
}
}
function clear_select(obj){
var num=obj.name.match(/[0-9]+/)[0];
obj.form.elements["select_hour_"+num].selectedIndex = 0;
}
</script>
<form>
<input id="Bot_Sch_20111001" name="Bot_Sch_20111001" type="button">
<select id="select_hour_20111001" name="select_hour_20111001">
<option value="--">--</option>
<option value="01">1</option>
<option value="02">2</option>
<option value="24">24</option>
</select>
<input id="Bot_Sch_20111002" name="Bot_Sch_20111002" type="button">
<select id="select_hour_20111002" name="select_hour_20111002">
<option value="--">--</option>
<option value="01">1</option>
<option value="02">2</option>
<option value="24">24</option>
</select>
</form>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
select内を書き換えることは出...
-
JavaScriptで<select>の<option...
-
プルダウンのoptionの表示・非...
-
javascriptでセレクトボックス...
-
連想配列を使ってコンボボック...
-
selectを変更不可にしたい
-
全てのselect要素をデフォルト...
-
セレクトボックスで配列を呼び...
-
select要素のvalueを配列で取得...
-
C#(csファイル)とjavascriptと...
-
ラジオボタンとプルダウンを連...
-
データベースからのarray を j...
-
子ウインドウから親ウインドウ...
-
二つのセレクトボックス間での...
-
プルダウンメニューに連動する...
-
addclassがうまく働きません
-
プルダウンで選択したCGIを動か...
-
セレクトメニューの選択項目変...
-
hiddenに値を設定する方法
-
セレクトボックスで選択した内...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウン選択を変更すると、...
-
selectを変更不可にしたい
-
javascriptでセレクトボックス...
-
全てのselect要素をデフォルト...
-
Selectボックスの一覧表示方法
-
リストボックス内の重複したも...
-
プルダウンの値によって活性・...
-
VBScriptでHTMLのセレクトボッ...
-
JavaScriptで<select>の<option...
-
セレクトボックスで配列を呼び...
-
ラジオボタンとプルダウンを連...
-
selectを使った計算
-
select要素のvalueを配列で取得...
-
<input>の選択肢をプルダウンメ...
-
javascriptでoptionタグを削除...
-
今日の日付を自動的にセレクト...
-
検索窓とプルダウンメニュー機...
-
【javascript】連想配列からセ...
-
selectボックスの選択結果を変...
-
同じ名前のセレクトがある場合...
おすすめ情報