一つのフォームに二つのボタンを配置するには

[上に] [前に] [次に]
ゆっけ [E-Mail] 1999/04/26(月) 16:20:37
ここのところフォーム+CGIの質問ばかりですが・・・。

一つのフォームで@のボタンが押されたらCGI@、Aのボタンが押されたら、CGIAというように処理を分けたい場合どうすれば良いのでしょうか? ちなみにINPUT TYPEは"IMAGE"です。
VALUEで区別するのかな?と思っておりますが・・・。

無責任官庁 1999/04/26(月) 17:24:17
CGI(1)とCGI(2)が同一プログラムの場合は、
単純に、<input type=image src="..." name="hoge">
とすれば、データがhoge.x=100とかって名前付きになる(ハズ)
なので、それで判断できると思います。

CGI(1)とCGI(2)が別プログラムの場合は、
フォームを2つ入れてしまうのが一番簡単ですけど・・・
意地でも一つでやりたい場合は、JavaScriptのお世話になるしかないかな。

#関係ないですけど、丸付き数字は使用しないほうがいいですよ。
#これって機種依存の文字なんでね。

げこすけ 1999/04/26(月) 17:29:16
TYPE=IMAGEの場合は無理かもしれません。
TYPE=SUBMITならできるんだけど。

でも、NAME="hogehoge"を付けておけば、CGIでどちらのボタンが
押されたかは分かります。
GETやPOSTにそのNAMAと同じ文字列が2つ出てきますから。

げこすけ 1999/04/26(月) 17:30:18
重なった!

でも、IMAGEボタンはJavaScriptでも振り分けられないんじゃないかなぁ・・・IEバグかもしれないけど。

ゆっけ 1999/04/26(月) 18:02:29
やはりTYPE=IMAGEだと無理ですかね。
一つのform内のチェックボックスとかプルダウンメニューの
値を使用したかったんですけど。

[上に] [前に] [次に]