• 締切済み

aspのセレクトボックスにDBのデータを表示する

お世話になっています。 現在、aspとSQLServerを使って一覧表を作成しています。 その一覧表を、大分類と中分類のセレクトボックスから 選択して、検索ボタンを押すと、SQLを作成して一覧表を表示する のですが、問題は、大分類を選択した後、その大分類で絞りこまれた 中分類を表示するのに少し時間がかかりすぎるのです。。 中分類はSQLServerのマスターからひろってくるのですが、SQLの 実行自体は1秒もかからないのですが、HTML上でセレクトボックスに 表示させると、すごく時間がかかるのです。テキストファイルから 読み込んだ大分類のセレクトボックスは表示が速いのに、 中分類を同じように速く表示させるには何か別の技術が必要 なのでしょうか? また、大分類のセレクトボックスのonChangeにSubmit()して、 ページを作成しなおしています。 よろしくお願いいたします。

みんなの回答

  • tsukachan
  • ベストアンサー率42% (202/470)
回答No.1

ソースの記述ミスでしょうね。 私は今まで起こった事がありません。 具体的に提示できる範囲で構わないのでSQL文とセレクトボックス表示部分のスクリプトを教えてくれませんか?

yumi_shin
質問者

補足

tsukachan様、ご返答ありがとうございます!!! SQL文とセレクトボックス表示部分のスクリプトは下記のとおりです。 見づらくて本当にすみません。 データベースの名称等を変更したので分かりづらい表示があるかも しれないのですが、分類名、bunrui,d_bunruiは大分類で、 中分類名、c_bunruiは中分類です。大分類はテキストファイルから 変数bunruiに入れており、("01 大分類名1,02 大分類名2・・"という 感じで入っている)その大分類のセレクトボックスで選択された左 2桁のコード部分をSQLの条件で検索し、絞られた結果を中分類 のセレクトボックスで表示させています。中分類は、絞り込んで 最大でも20件以内だと思います。このほかに年月、区分セレクトボックス等がありまして、それぞれコンボボックスが選択されるonChangeで Submit()しています。(そうしないと一覧表の方でRequest.form("") でデータを取得できないため) 稚拙なソースで大変恐縮ですが、ご教授の方よろしくお願いいたします。 <form name = "selform" method="POST"> <font size="2">分類名 : </font> <select name="fbunrui" onchange="submit()" target="sub" action = "select.asp"> <option selected value="<%= response.write (d_bunrui_name) %>"><%=response.write (d_bunrui_name) %></option> <p> <% for i = 1 to bunrui_cnt if bunrui(i-1) <> d_bunrui_name then %> <option value="<% response.write bunrui(i-1) %>"><% response.write bunrui(i-1) %></option> <p> <% end if next %> <input type="hidc_bunrui" name="bunrui" value="<% response.write (d_bunrui_name) %>"> </select> </form> </td> <td width="300"> <font size="2">中分類名 : </font> <select name="fc_bunrui" onchange="submit()"> <% '中分類コンボセット execSQL = "" execSQL = "select distinct sh.c_bunrui from dbname sh,中分類名称マスター km where (sh.kbn = '3') and (km.中分類コード = sh.c_bunrui) and (sh.d_bunrui = '" _ & left(d_bunrui_name,2) & "') order by c_bunrui" Set RS = Server.CreateObject("ADODB.Recordset") RS.Open execSQL, Conn, 1, 1 count = rs.recordcount for i = 1 to count -1 if c_d_bunrui_name <> trim(rs("c_bunrui")) then %> <option value="<%response.write trim(rs("c_bunrui")) %>"><%response.write trim(rs("c_bunrui")) %></option> <p> <% else %> <option selected value="<%response.write (c_bunrui_name) %>"><%response.write (c_bunrui_name) %></option> <p> <% end if rs.movenext next rs.close set rs = nothing %> <input type="hidc_bunrui" name="bunrui" value="<% response.write (d_bunrui_name) %>"> <input type="hidc_bunrui" name="c_bunrui" value="<% response.write (c_d_bunrui_name) %>"> <input type="hidc_bunrui" name="nengetsu" value="<% response.write (left(nengetsu,4)&right(nengetsu,2)) %>"> </select> </form> </td>

関連するQ&A

  • JavaScriptでのセレクトボックスの作成について

    開発環境はASP(ASP.NETでは無いです), SqlServerです。 実現したい処理としてはサーバーにある、親子関係の大分類マスタと中分類マスタより、セレクトボックス(HTMLで記載する際の<Select>タグで作成する物)を作成し、大分類マスタのセレクトボックスが変更されると、中分類マスタのセレクトボックスの値が変わる(画面の再描写は無し)という事をしたいと思っています。 こういった場合どのように記載すれば、実現することが可能でしょうか? ASPでのソースの書き方を正直まだ理解できていませんので、バカな質問かもしれませんがよろしくお願い致します。

  • セレクトボックスの連動について

    https://secure.sakura.ad.jp/member/password.php こちらのページにあるように「都道府県」を選択すると 一度リロードされ、選択された「都道府県」に基づく 「市区町村」のセレクトボックスが表示されるようになります。 おそらく、セレクトボックスに「onchange」イベントハンドラを つけて、処理しているかと思いますが、具体的な方法が 分かりません。 どなたか分かる方、教えて頂けますでしょうか?

    • ベストアンサー
    • HTML
  • セレクトボックスの表示方法について

    フォームなので使われるセレクトボックスについてですが、 ↓矢印を押すとセレクトボックスの内容一覧が表示されますよね。 その表示がまれに上側に出てしまうことがあるのですが、 その表示を絶対に下側に出るように指定することって出来ますか? ご存知方がいらっしゃいましたら、教えて下さい。 よろしくお願い致します。

  • jquery セレクトボックス

    jqueryについて質問させて頂きます。 今予約フォームを作成しているんですが、下記のような機能をつけたいんです。。 セレクトボックスは、1.「年月日」2.「時間」の2つあり、 セレクトボックス1で年月日を選択したさいに、土日を含む場合と平日の場合で、 セレクトボックス2に表示される内容を変えたいのです。 現状は、とりあえず日にちの表示はできました。。 後は土日か平日かを取得してセレクトボックス2の内容を変えたいのですが。。。 参考になりそうなサイトや、ご意見を頂きたいです。。 宜しくお願いします。。。

  • php セレクトボックス 分岐 わかりません・・・

    php if文? セレクトボックスの選択に応じて、次ページで表示するものも変えたい。 授業評価アンケートのデータ収集システムを開発中です。 page1.php では、 年度(セレクトボックス)[nendo] 学年(セレクトボックス)[gakunen] クラス(セレクトボックス)[class] 科目名(テキストボックス)[kamokumei] 科目コード(テキストボックス)[kamokucode] 分類(テキストボックス)[kind] 履歴者数(テキストボックス)[people] を選択及び入力します。 page2.php では page1.php で選択及び入力された情報をPOST?hidden?などを利用し、 年度:2011 学年:1 クラス:1 科目名:国語 科目コード:11L901 分類:講義科目 履歴者数:40 のように表示させ、その下にアンケートの回答者数を入力する表を示します。 分類のセレクトボックスには4種類の項目があります。 講義科目・体育科目・実験科目・HR です。 分類により、アンケートの設問数が異なるようにしたいのです。 たとえば、 講義科目は設問が1~5。体育科目は1~8。実験科目は1~10。HRは11~15。 だとします。 page1.php 入力された「分類」に応じて、設問数の異なる、 page2.php を表示したいのですが、わかりません。 また、アンケートの表については、 A~F評価があり、 設問1のAならそのマスをname="1A"、設問2のBならname="2B",・・・というようにしています。 page3.php 入力したものを全て表示し、で確認ページとし、 page4.php で、「登録」ボタンを押すと、 年度 学年 ・ ・ ・ 履歴者数 ・ ・ ・ 1A 1B ・ ・ ・ 15F (↑のような構造のtableも用意済み) のデータをmysqlに挿入します。 「分類」による分岐をせず、 page2.phpで、設問数1~5の場合で、データの挿入には成功しました。 6~15については、空となっています。 「分類」により設問数の異なるpage2.phpを表示し、 現在の段階のように、データを挿入できるような形態にできませんでしょうか? どうかお願いしたします!!!!!!!!!! 時間がありません>< お願いします!!!!

    • 締切済み
    • PHP
  • セレクトボックスとテキストボックスの連動について

    セレクトボックスで質問事項を選ぶと、テキストボックスの中に選択した名称が表示される。ということをやりたく下記の様に設定しました。 <script> function hoge(obj){ var f=obj.form; var v=obj.options[obj.selectedIndex].value; var c=f.elements["comment"]; c.value+=v; obj.selectedIndex=0; } </script> <select name="質問事項1" onchange="hoge(this)"> <option value="selected">質問事項を選んでください</option> <option value=“質問1">質問1</option> <option value="質問2">質問2</option> <option value="質問3">質問3</option> </select> <textarea name="comment"></textarea> 現在発生している問題が1点あります。 セレクトボックスで質問を2回選ぶと、選んだ2つの結果がテキストボックス内に連続して表示されます。 例: 1回目 セレクトボックス内 「質問1」を選択 ↓ テキストボックス内 「質問1」が表示 2回目 セレクトボックス内 「質問2」を選択 ↓ テキストボックス内 「質問1質問2」と表示 2回目以降選んだ場合に前回の処理をクリアにして、1つのみ表示させたいと思うのですがどうやればいいのでしょうか。 よろしくお願いします。

  • セレクトボックスについて

    現在、PHP画面を使って登録画面を作成しています。 必要事項を打ち込んだら、「確認」のボタンを押し、ページジャンプして 打ち込んだ内容を確認させその内容でよければ「登録」ボタン、 修正したければ「修正」ボタンといった流れで、修正ボタンを押すと 必要事項を打ち込んだ画面に戻るようにしているのですが、 その際、セレクトボックス(<select>)に最初に打ち込んだ内容を表示させたいのですが どうしたらいいのでしょうか? (最初にセレクトボックスで「男」を選択していたら修正で戻っても「男」が選択されているようにしたい) input typeのtextで打ち込んだ内容はセッションと変数を使ってvalueに値を入れたら 表示することができたのですが… 回答お待ちしています。

    • ベストアンサー
    • PHP
  • 複数のセレクトボックスで項目を選択でき、それらの項目を条件に、ヒットするデータを表示させたいのですが…。

    Webページにて校区表を作成しています。 作りたい仕組みは下記のとおりです。 1)1番目のセレクトメニューで町名を選択 a町 b町 c町… 2)2番目のセレクトメニューは、上記の町名に当てはまる番地を表示させる。例えば、a町が選択されたときは「1,2,3,4,5」、b町が選択されたときは「1,2,3」など。 3)更に、「b町,e町,g町」が選択された場合にのみ3番目のセレクトメニューを表示させ、「号」を選択できるようにする。 4)そして、「検索」ボタンが押された時に、上のセレクトメニューで選択された住所に該当する「学校名」を表示させる。 住所一覧と、その住所に該当する学校名を記入したテキストファイルを用意し、セレクトボックスで選択された項目にヒットする“学校名”を表示させるようにすれば…?と思うのですが、参考になるサイトを探しても「URLを表示させる」というものがほとんどで困っています。 なにぶん、プログラミングの初心者なので、参考になるサイトがありましたら教えていただきたいと思います。 よろしくお願い致します。

  • ASP.NETのGridViewでNULLの場合にチェックボックスにしたい

    ASP.net(VB)とSQLSERVERで開発しているのですが、SQLSERVERでストアドプロシージャでSELECT文を発行するSQLを書きました。 1)そのデータをGridViewで表示したのですが、列がNULLの場合にチェックボックスを表示したい。←これが分からない 2)チェックボックスがonの状態で実行ボタンが押下された場合に別のストアドプロシージャを走らせてNULLを「確認済」としたい。 (例) チェック   |名前 |メールアドレス 確認済    |Aさん|aaaa@test.co.jp □(チェックボックス) |Bさん|bbbb@test.co.jp [実行ボタン] このようにこのようなことはGridViewで可能なのでしょうか? それとも、HTMLコントロールを使用して一行ずつ書きこんでいくしかないのでしょうか? 返答をお待ちしております。

  • DB内容をテキストボックスに表示し、変更はできますか?

    DBをaspを使ってホームページ上で管理したいと思っています。 DBのデータ一覧を表示しその中からデータ選択、 各項目をテキストボックスに表示した上で、必要部分だけ書き換えて上書きしたいのですが、具体的にどのようにしたらよいのでしょうか? よろしくおねがいします。

専門家に質問してみよう