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

こんばんわ。

下のようなフォームアイテムがあるとします。
<SELECT name="Staff">
<OPTION value="yamada">山田</OPTION>
<OPTION value="abe">阿部</OPTION>
</SELECT>

これを送信してASPでキャッチしますと・・・
Request("staff") で「yamada」や「abe」が取得できます。

たとえばテキストの方は取得できないでしょうか?
Javaスクリプトなら可能です。
たとえば・・・
Request("staff").TEXT とかで「山田」や「阿部」取得できないですか?

色々自分なりにやってみましたが・・・無理でした。
出来ないはずはないと思うのですが・・・

いかがでしょう。。。

A 回答 (4件)

僕も同じ事で悩んだ事がありますが、僕の調べた限りではできませんでした。


基本的にVALUEで指定したモノしか渡せないはずです。
解決策として以下の方法はどうでしょう?

<SELECT name="Staff">
<OPTION value="yamada:山田">山田</OPTION>
<OPTION value="abe:阿部">阿部</OPTION>
</SELECT>

Mid(Request("staff"),1,Instr(Request("staff"),":")-1) で「yamada」を
Mid(Request("staff"),Instr(Request("staff"),":")+1) で「山田」を取り出せると思います。
    • good
    • 0

For Each文で変数の列挙ができますよ。



For Each RqName In Request.Form
  '変数名を表示する
  Response.Write Request.Form(RqName) & "<br>"

  '中身を表示する
  Response.Write RqName & "<br>"
Next
    • good
    • 0

より姑息に。

。。

<SELECT name="Staff">
<OPTION value="yamada">山田</OPTION>
<OPTION value="abe">阿部</OPTION>
</SELECT>
<INPUT type="hidden" name="yamada" value="山田">
<INPUT type="hidden" name="abe" value="阿部">

これで、Staffの値を判定して、Request("yamada").Value で値が取れますね。

まぁ、美しいかどうかは別として。
    • good
    • 0

そもそもvalueしか送信(GET/POST)しないので不可能です。



姑息な方法ですが..
<form onsubmit="this.Staff_text.value=this.Staff.options[this.Staff.selectedIndex].text">
<SELECT name="Staff">
<OPTION value="yamada">山田</OPTION>
<OPTION value="abe">阿部</OPTION>
</SELECT>
<input type=hidden name=Staff_text>
<input type=submit>
</form>

# ASP.NETならなぁ~
    • good
    • 0

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