dポイントプレゼントキャンペーン実施中!

よろしくお願いします。
今、ASPとaccessデータベースによるWEBシステムを作成しています。

プルダウンが2つある(AとBとする)として、
Aである項目を選択すると、
それに伴いBで選べる項目が決まるようにしたいとおもっています。

Aのプルダウンから選んで、ボタンを押すようにすればできるのですが、ボタンでなく値を選んだ時点でBを決めるようにするにはどうすればよいでしょうか?

ご教授お願い致します。

A 回答 (3件)

こんにちは。



またまたミスです。申し訳ないです。

<script language="javascript">
<!--
function a_change(){
a = document.form1.hoge_A.selectedIndex;

document.form1.hoge_B.options.length = 0;

if(a == "1"){
document.form1.hoge_B.options[0] = new Option("B10",0);
document.form1.hoge_B.options[1] = new Option("B11",1);
}else if(a == "2"){
document.form1.hoge_B.options[0] = new Option("B20",0);
document.form1.hoge_B.options[1] = new Option("B21",1);
document.form1.hoge_B.options[2] = new Option("B22",2);
}else{
document.form1.hoge_B.options[0] = new Option("B00",0);
}
}
//-->
</script>

<form name="form1">

<select name="hoge_A" onChange="a_change()">
<option value="0">0
<option value="1">1
<option value="2">2
</select>

<select name="hoge_B">
<option value="0">B00
</select>

</form>

です。

この回答への補足

お教えどおりのコードでできました!これがやりたかったんです♪
おかげで先へ進むことができます。

今回は本当にありがとうございました(^^)

補足日時:2008/08/25 21:35
    • good
    • 0

こんにちは。


#1です。

申し訳ないです。「form」が抜けていました。

<select name="hoge_A" onChange="this.form.submit()">
...
</select>

POSTするには、form タグに明示すればよいです。

<form name="form1" method="post">

<select name="hoge_A" onChange="this.form.submit()">
...
</select>

</form>

これだとページがリダイレクト(GETやPOSTでページ再読み込み)されてしまうので、
もしBのリスト数がそれほどないのであれば、
Bリストを表示するJavaScriptを動的に作る方法もあります。

<script language="javascript">
<!--
function a_change(){
a = document.form1.hoge_A.selectedIndex;

document.form1.hoge_B.options.length = 0;

if(a == "1"){
document.form1.hoge_B.options[0] = new Option(0,"B1-0");
document.form1.hoge_B.options[1] = new Option(1,"B1-1");
}else if(a == "2"){
document.form1.hoge_B.options[0] = new Option(0,"B2-0");
document.form1.hoge_B.options[1] = new Option(1,"B2-1");
document.form1.hoge_B.options[2] = new Option(2,"B2-2");
}else{
document.form1.hoge_B.options[0] = new Option(0,"B0-0");
}
}
//-->
</script>

<form name="form1" method="post">

<select name="hoge_A" onChange="a_change()">
<option value="0">0
<option value="1">1
<option value="2">2
</select>

<select name="hoge_B">
<option value="0">0
</select>

</form>

JavaScriptの条件と条件内のリストをあらかじめ動的に作成
しまうと、ページをGET、POSTすることなくBリストが切り替わる
と思います。
    • good
    • 0

こんにちは。



そのボタンのアクションをセレクトボックスのonChangeにもって
くればよいのではないでしょうか。

<select name="hoge_A">
...
</select>
<input type="submit" value="ボタン">



<select name="hoge_A" onChange="this.submit()">
...
</select>

これだとGETになってしまいますが、POSTしたい場合は
ちょっと変える必要がありますが。

この回答への補足

ご回答ありがとうございます!

色々検索してるうちにそのonChangeというのが気になっていたのですが、this.submit()で指定するんですね!
明日試してみます(^^)ありがとうございます。

ちなみにPOSTするにはどのように書けばよいのでしょうか?
すみませんが、よろしくお願いします。

補足日時:2008/08/24 13:27
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!