- 締切済み
再度・ボタンの判定が出来ません?
前回と同じ質問で、不可能との解答で締め切りましたが、 可能との意見が有るみたいですので、再度上げさせてもらいます。 print "<P><INPUT TYPE=submit NAME=\"送信\" VALUE=\"送信\"> <INPUT TYPE=submit NAME=\"削除\" VALUE=\"削除\"> <INPUT TYPE=reset NAME=\"クリア\" VALUE=\"クリア\">\n"; 上記のようなコーディングで、ボタンを表示させてますが、 どちらのボタンを押しても、送信しか受け取れません。 どこで、何をどのようにコーディングすれば読みとれるのでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- arata
- ベストアンサー率49% (139/279)
素人なので、間違っているかもしれませんが、 <html> <head><title>kicker</title></head> <body> <form method="post" action="/Scripts/chk.asp"> <input type="submit" name="a" value="INSERT"> <input type="submit" name="b" value="UPDATE"> <input type="submit" name="c" value="DELETE"> </body> </html> でどのボタンが押されたかなのですが、 <html> <head><title>asp test</title></head> <body> <% response.write request("a") & "<br>" & vbcrlf response.write request("b") & "<br>" & vbcrlf response.write request("c") & "<br>" & vbcrlf %> </body> </html> とやると、押されたボタンの値だけが来てます。 たとえば、UPDATEが押されると request("b")は"UPDATE"ですが、request("a")とrequest("c")は、""となっています。 これで判断できませんか?
- leaz024
- ベストアンサー率75% (398/526)
私のところでは全く問題なく判別できるようです。 試しに下記コードをHTMLとしてデスクトップなどに保存し、各ボタンを押してみてください。 <HTML> <BODY> <FORM> <INPUT type="submit" name="a" value="INSERT"> <INPUT type="submit" name="a" value="UPDATE"> <INPUT type="submit" name="b" value="DELETE"> </FORM> </BODY> </HTML> HTMLファイル名は何でも構いません。FORMにACTIONを指定していないので、自分自身に送信されます。 GET渡しされるので、送信後のアドレスを確認してみてください。 nameが同じだろうと違おうと、押したボタンのNAME=VALUEの組み合わせが送信されるはずです。 手元にあるIE5.00、NN4.73ではそのようになりました。 PerlでCGIを書いても、同様に判別することが出来ました。 試した結果を教えて頂きたいのですが。 # IEの仕様というのは、Microsoftの公式なデータなのでしょうか?
- yuizuian
- ベストアンサー率42% (103/245)
ラジオボタンで送信・削除を選ぶか、削除の方を違うフォームにしてデータを全てhiddenで送るかではないのでしょうか? メソッドをGET形式にすれば「送信=送信」「削除=削除」 という風に押したボタンの情報?が送られるのですが、やっぱり情報が見えてしまうので如何なものかと。