アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になってます
aaa.aspにQボタン(Submit)、Zボタンbutton、と
FORMがあります。
Qボタンを押された時はbbb.aspにSubmitしたい、
Zボタンを押された時はccc.aspにSubmitしたい、
だがしかしFormのActionにはSubmit先が一つしか書けないですよね。
どちらのASPにもFormの内容を送りたいのです。
このような処理は可能なのでしょうか?
教えて下さい。

A 回答 (4件)

JavaScriptでどうこうする方法もありますが、


クライアント側の環境によって左右されるので、
クライアント側の環境に影響しない方法を紹介しますね。

<!-- aaa.asp -->
<form action="aaa2.asp" method="post">
<input type="hidden" name="field" value="test">
<input type="submit" name="btnQ" value="Q">
<input type="submit" name="btnZ" value="Z">
</form>

<!-- aaa2.asp -->
<%
If Len(Request.Form("btnQ")) > 0 Then
Server.Transfer "bbb.asp
Else
Server.Transfer "ccc.asp"
End If
%>

※あとは bbb.asp と ccc.asp をそれぞれ用意しておく

Server.Transferを使用している都合でASP3.0以上(IIS5以上)じゃないと動作しませんが、条件を満たしていればこんな方法で良いんじゃないかと。

参考までに

この回答への補足

hequilさん、ありがとうございます!
これでやりたいことが出来ます。
解決しました。
あと、Transferというのは初めて聞いたのですが(勉強不足ですみません)
Redirectと同じ機能ですか?
もしよければ、これも教えて頂きたいのですが。
すみませんよろしくお願いします。

補足日時:2001/11/22 10:11
    • good
    • 0

こんにちは。

itohhといいます。

TransferメソッドはIIS5.0からの対応です。
それ以前のIISではエラーとなると思います。
    • good
    • 0
この回答へのお礼

開発環境では問題ないけど、そうですね、
どこまで考慮して開発しなければならないのか上司と要相談ですね。
アドバイスありがとうございました。

お礼日時:2001/11/23 00:21

> あと、Transferというのは初めて聞いたのですが(勉強不足ですみません)


> Redirectと同じ機能ですか?

Server.Redirectと似ていますが、実際は違います。

一言で説明すると
Server.Redirect が「ページ転送」に対し
Server.Transfer は「制御転送」になります。

制御を移すだけですので、処理も高速ですし
セッション情報や Request.Form変数などもそのまま転送先のASPへ引き渡します。
(詳しいことは参考URLをご覧になって下さい)

逆に Server.Redirectより高速なのだからといって、同じように使用しても良いのですが、考えて使わないと痛い目にあいます(謎)

あと、Server.Transferはその性質上、別サーバーのURLは指定できません(制御を移せないので)

ま、説明するよりも実際に使って頂くとわかると思います。
参考までに

参考URL:http://www.microsoft.com/japan/developer/library …
    • good
    • 0
この回答へのお礼

下のソースも含め、分かりやすい説明ありがとうございました。
勉強になりました。
そうですね、調子に乗って闇雲に使わないように気をつけます。
URLも教えて頂いて、ありがとうございました。

お礼日時:2001/11/23 00:13

単純に下記のようにすればHTMLだけでも出来ます



<FORM ACTION="bbb.asp" METHOD="POST">
<INPUT TYPE="SUBMIT" VALIE="Q">
</FORM>
<FORM ACTION="ccc.asp" METHOD="POST">
<INPUT TYPE="SUBMIT" VALIE="Z">
</FORM>

この回答への補足

回答ありがとうございます。
でもFormは一つなんです。
ここが悩ましいところなんですよね。

補足日時:2001/11/22 09:16
    • good
    • 0

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