プロが教えるわが家の防犯対策術!

いつもお世話になっております。
プログラム初心者ですが、どうしても方法がわからないので質問させていただきます。

サーバー側 ASP(VBS) クライアント側 html javascriptで作成しているのですが、
プルダウンを選択すると、そのテーブルの列にある値をテキストボックスにいれたいと思っています。


例えば、以下のようなテーブルがあって、

法人コード | 会社コード | 法人名
------------------------------
   1    |   aa    | トヨタ
------------------------------
   2    |   bb    | ニッサン
------------------------------
   3    |   cc    | ホンダ


データベースから読み込んで、法人コードをプルダウンにセットします。
プルダウンが選択されると、その列の会社コードと法人名をテキストエリアに出力したいと思います。

※例 法人コード「1」をプルダウンで選択すると、「aa」と「トヨタ」がテキストエリアに表示される。



連動プルダウンで、直接option value部分に書けばできそうですが、
データの量が膨大な為、直接コードに書くのは難しそうです。



form action で、1度別のベージに飛ばして、
そこで、SQL文にて、法人コードを条件にして出力しようともしましたが、
全体がformで囲まれているので、formの入れ子になりできませんでした。



おそらくjavascriptで、select部分で、onchange="Selc(this)"とすれば、
その処理を行うと思うのですが、処理自体の書き方がわかりません。


プルダウン部分に法人コード一覧を表示させることは、できましたが、
その後の処理の書き方がわかりませんので、
ご存知の方がいらっしゃいましたら、ご回答宜しくお願いします。


一部ソースを載せます。


<%
' データベース接続の確立
Set Conn = ConnectDB(DSN)

' 法人マスタテーブルから値を取得

SQL = "Select 法人コード,会社コード,法人名称 From 法人マスタ ORDER BY 法人コード"

Set Rs = ExecSql(Conn, SQL)

%>




<tr class="example">
<td style="width:300px; text-align:left; background-color: #00ff00;">
<b>法人コード</b>
</td>
<td>
<select name = "houjin">
<option value=""/>--------法人コード選択--------</option>
<%
While Not Rs.EOF
Response.Write"<option value=""" & Rs("法人コード") & """>" & Rs("法人コード") & " " & "</option>"
Rs.MoveNext
Wend
%>
</select>
</td>
</tr>
<tr class="example">
<td style="width:300px; text-align:left; background-color: #00ff00;">
<b>会社コード</b>
</td>
<td>
<textarea name="kaisya" style="width:100%" rows=1 class="textbox"></textarea>
</td>
</tr>
<tr class="example">
<td style="width:300px; text-align:left; background-color: #00ff00;">
<b>法人名</b>
</td>
<td>
<textarea name="hmei" style="width:100%" rows=1 class="textbox"></textarea>
</td>
</tr>

どうぞよろしくお願いします。

A 回答 (1件)

どのくらいの数なのか不明ですが…



>直接option value部分に書けばできそうですが、
>データの量が膨大な為、直接コードに書くのは難しそうです
それだけ種類が多いのであれば、一つのセレクトで選択させるというUIそのものが問題ではないのでしょうか?

入力コードをサーバーに送信してDBからレコードを得たいのであれば、ajaxあたりをキーにググればいろいろと見つかると思います。

数が少なければ、最初にスクリプトに全データを渡して、あとはクライアント側で処理してしまうという方が簡単です。
ご質問の内容なら、数が1000くらいあってもデータ量として100kbにはならないくらいでしょうから。
一方で、1000個もあるプルダウンを操作するなんてとても私には考えられません。

この回答への補足

丁寧なご説明ありがとうございます。

ajaxを検索してみましたが、PHPを使用しているものが多くて、PHPを勉強したことのない私には理解できませんでした。

最初にスクリプトに全データを渡して、クライアント側で処理ということですが、意味はわかるのですが、どういう方法で行えばいいかが、全然思いつきません。
お手数でなければ、参考になるサイト等教えていただければ助かります。

どうぞ宜しくお願いいたします。

補足日時:2014/06/09 17:58
    • good
    • 0
この回答へのお礼

ajaxは難しいので、断念しました。
隠しフレームにてなんとかできました。
回答ありがとうございました。

お礼日時:2014/06/13 09:36

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A