• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リストボックスを使って検索フォームを作りたいのですが)

リストボックスを使った検索フォームの作成方法

caitsith_gooの回答

回答No.2

他の方法としては、 <select name="list1" onChange="ListChange(this.value)"> <option value="default">検索項目</option> <option value="name">名前</option>); <option value="date">日付</option>); <option value="team">チーム</option>); </select> function ListChange(val) { location.href = '○○.php?list1='+val; } として、○○.phpでlist1の値に対応するlist2のvalueとtextの配列をDBから取得し、このページでセレクトを作成します。 list1で選択した値を使って再度同じページを開き、そのときにlist2を作成するという処理です。 DBから値を取得してセレクトを作成するクラスを作っておくと楽です。 list1を選択した時に、 location.hrefではなくてonChangeでサブミットしてしまう方法もあると思います。 また、 var name_value=newArray("suzuki", "sato", "tanaka"); とするやり方ですが、 DBから取得したデータで、『"suzuki", "sato", "tanaka"』という文字列を作っておいて、 var name_value=newArray(<?=$name_value?>); または echo "var name_value=newArray(".$name_value.");"; とします。

wipe
質問者

お礼

回答ありがとうございます。 回答の内容が難しく苦戦していました。 あまり簡単な質問を聞いては失礼なので自分なりに考え込んでしまい返答が遅くなりました。 内容は大体わかったつもりでいますが、分からなかった部分を質問させてもらいます。 ○○.phpでlist2のセレクトを作成するということですが、ここで表示もするのいでしょうか? location.href = '○○.php?list1='+val; のvalはvalueの間違いですか?valでも良いのでしょうか? function ListChange(val) { location.href = '○○.php?list1='+val; } の関数内に○○.phpのコード内容を直接書いても同じですか? newArray()への文字列の入力は分かりました。 とても分かりやすい説明でした。ありがとうございました。 よろしくお願いします。

関連するQ&A

  • リストボックス全選択について

    JavaScriptについて質問です。 リストボックスA,B と プルダウンC という画面項目があると仮定し、 submitボタンを押下したとき、 リストボックスA,Bの項目全てが全選択され、プルダウン項目はそのままにしたいと考えております。 下記のソースのように作成したのですが、 リストボックスが全選択されるところまでは良いのですが、 プルダウン項目が最後の項目が選択された状態になってしまいます。 リストボックスだけが全選択され、プルダウン項目はそのままにするにはどうしたら良いでしょうか。 かなり困ってます。 どなたか助けてください。。 以下ソースです。 <html> <head> <script language="JavaScript"> <!-- function selectAll(){  var str = document.getElementsByTagName("option"); for(i=0;i<str.length;i++){ str[i].selected = true; } } //--> </script> </head> <body> <table> <tr> <td> リストA<br> <select name="listboxA" multiple> <option value="サンプル1">サンプル1</option> <option value="サンプル2">サンプル2</option> <option value="サンプル3">サンプル3</option> </select> </td> <td> リストB<br> <select name="listboxB" multiple> <option value="サンプル4">サンプル4</option> <option value="サンプル5">サンプル5</option> <option value="サンプル6">サンプル6</option> </select> </td> <td> プルダウンC<br> <select name="Pdown"> <option value="サンプル7">サンプル7</option> <option value="サンプル8">サンプル8</option> <option value="サンプル9">サンプル9</option> </select> </td> </tr> </table> <br> <input type=submit value="送信" onClick="selectAll()"> </body> </html>

  • リストボックス内の文字について

    表題の件ですが、質問があります。 リストボックス内で表示する文字の大きさを変えたいのですが、 どうのようにすればいいのでしょうか? <select name="year"> <option value="2000">2001</option> <option value="2000">2002</option> <option value="2000">2003</option> </select> 2001,2002,2003の文字を大きくかつ太くしたいです。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • web上のリストボックス作成

    あるHTMLで、リストボックスをDREAMWEAVERでさくせいしました。 リストを選択すると、選択された名前のHTMLに飛ぶように指定したのですが、 ネスケでは動いてくれるのですが、IEでは飛んでくれません. 原因を教えてください。以下のようなHTMLです。 このためのCGIはくんでいません。 <form name="form2"> <select name="month"onChange="MM_jumpMenu('parent',this,0)"size="0"multiple> <option value="1.html"> 1 </option> <option value="2.html"> 2 </option> <option value="3.html"> 3 </option> <option value="4.html"> 4 </option> <option value="5.html"> 5 </option> </select> </form>

    • ベストアンサー
    • HTML
  • リストボックスから選択できないのはどうして!?

    実はJAVASCRIPTでリストボックス(select1)から会社名を選択するとその下のテキストボックス(link)に そのURLがでるものを作っていたのですが、なぜかリストボックスが選択できない状態になってしまいます。 下のがそのコードなのですが、どなたかわかるかたいらっしゃいませんか? どうぞよろしくお願いいたします。 <SCRIPT type="text/javascript"> <!-- function aaa() { var a; if((f.select1.value) ="A社") {url = "http://www.a***.co.jp" }; else if((f.select1.value) ="B社") {url =" http://www.b***.co.jp" }; else if((f.select1.value) ="C社") {url = "http://www.c***.co.jp" }; else{url = "URLはありません"}; (f.link.value) = url; return } //--> </script> <select onchange = "aaa()" name="select1"> <option value="A社" selected>A社</option> <option value="B社">B社</option> <option value="C社">C社</option>      <option value="D社">D社</option> </select> <input type="text" name="link">

  • リストボックスに動的な初期設定値(selected)を与えたい(質問長文)

    以下のようなリストボックスで、今日の日付データから「(1年前の)year」と「(今月の)month」の初期設定値を与えようと思うのですが、スマートな方法が思いつきません。 どなたかよい方法を教えてください・・・ <form name="test"> <select name="year"> <option>1997 ・・・(中略) <option>2005</select> 年 <select name="month"> <option value="01">1 ・・・(中略) <option value="12">12</select> 月 </form> <script language="JavaScript"> <!-- function initial(){ 【ここにどのように書くか】 } initial(); //--> </script>

  • リストボックスを連動させて・・・その2

    直前の質問で下記の回答をいただいたものです。 質問では2つのリストボックスを連動させたサンプルの回答をいただきましたが、ひょっとして、リストボックスの個数が何個でも対応させることはできないでしょうか。つまり、リストボックスのnameなどをscript部分に記さずに・・。 ここまでサンプルをもらっても改造できないので質問。 (^^; ■JavaScript <SCRIPT language=JavaScript> <!-- strBase = "test.cgi?hinmei=denwa "; strS1 = "&s1="; strS2 = "&s2="; function set(){  strS1b = strS1  strS2b = strS2   if (document.form.s1.options[document.form.s1.selectedIndex].value)   strS1b += document.form.s1.options[document.form.s1.selectedIndex].value;  if (document.form.s2.options[document.form.s2.selectedIndex].value)   strS2b += document.form.s2.options[document.form.s2.selectedIndex].value;  strURL = strBase + strS1b + strS2b;  document.form.text.value = strURL; } //--> </SCRIPT> ■フォーム <FORM NAME="form"> <select name="s1" onChange="set()"> <OPTION VALUE="" SELECTED>↓【選択して下さい】</OPTION> <OPTION VALUE="big">big</OPTION> <OPTION VALUE="small">small</OPTION> </SELECT> <select name="s2" onChange="set()"> <OPTION VALUE="" SELECTED>↓【選択して下さい】</OPTION> <OPTION VALUE="red">red</OPTION> <OPTION VALUE="white">white</OPTION> </SELECT> <INPUT TYPE="text" SIZE=50 NAME="text"> </FORM>

  • リストボックスから直接引き金を引く

    お世話になります。 早速ですが、 今、あるaplを書いていまして、 処理内容はリストボックスからキーを選択させ、 そのキーでDBを検索、表示するというモノです。 現在のロジック、つくりは、 リストボックスの下に(「表示」という)ボタンを設置してあり、 リストボックスからキーを選択した後、 そのボタンを押すことでcgiに戻りDBを検索する、 となっています。 <FORM action="./DB.cgi" method="POST"> <div> <select name="key" size="3"> <option value="aaa">aaa <option value="bbb">bbb <option value="ccc">ccc <option value="ddd">ddd <option value="eee">eee <option value="fff">fff </select> </div> <input type=submit value="表示"> <input type="hidden" name="mode" value="display"> </FORM> ここで質問ですが、 リストボックスからキーを選択したらそのままDB検索へ移行するような コードを教えて欲しいのです。 (いちいち表示ボタンを押さなくて良いやり方です) 以上、宜しくお願いします。

    • ベストアンサー
    • Java
  • リストボックスで選択し、CGIを走らせる

    リストボックスに  <form name='nav'> <select name='selector' size='1' > <option value='default'>---------- <option value='yamada-taro'>山田太郎 という風に、何人もの人名が入っています。 リストボックスの隣には「選択」ボタンがあります。 ボタンを押すと、個人情報の載ったXMLファイルが開く ようになっています。 現在、 <input type='button' value='選択'onclick='renewXML()'> という処理で、検索用関数に飛んでいますが、これを 「選択」ボタンが押されたときに、検索用CGIを走らせる ように変更したいのです。 actionタグを使えばいいのかな?と思っているのですが、 具体的な方法を教えていただきたいのです。 初心者なので質問内容に不備がありましたらお許しください。 なにとぞ、よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • リストボックス

    携帯サイトで47都道府県のリストボックスを製作してるんですけど、AUがうまく表示できません。 ドコモはちゃんと別画面に飛んで表示されるんですが、AUの場合は一面表示ができずに、一行のボックスを下に押す感じでしか表示できないんです。 使ったタグはコレです <form method="POST" action="example.cgi"><SELECT size="1" name="住所"> <OPTION value="1">北海道</OPTION> </SELECT> こんな感じで47都道府県入れています。 なぜならないのかわかる方いませんか?

  • リストメニューに反映させる内容

    list.dat 内 $list1,$list2,$list3,$list4,$list5,$name1,$name2,$name3,$name4,$name5, print "<select name=list>\n"; print "<option value="0">未選択</option>\n"; print "<option value="1">$name1</option>\n"; print "<option value="2">$name2</option>\n"; print "<option value="3">$name3</option>\n"; print "<option value="2">$name4</option>\n"; print "<option value="3">$name5</option>\n"; print "</select>\n"; list.dat内のデータをselectメニューに反映させたいのですが、自分の頭ではかなり難しい事のようで、行き詰ってしまいました。 質問の仕方が下手で、どのように書いていいのかわからないのですが、やりたいことは、 $list1の名前が$name1 $list2の名前が$name2 というように、$listと$nameに付けられた数値番号が同一のものがセットになります。 この両方の変数にデーターが入っている場合のみ、セレクトメニューに反映させます。 例えばlist.dat内が $list1,,$list3,,$list5,$name1,$name2,$name3,$name4,, のような場合は、 print "<select name=list>\n"; print "<option value="0">未選択</option>\n"; print "<option value="1">$name1</option>\n"; print "<option value="3">$name3</option>\n"; print "</select>\n"; このようになります。 上のような作りは無理でしょうか? お力をおかし頂けると幸いです。

    • ベストアンサー
    • Perl