• ベストアンサー

複数のチェックボックスを一括でON・OFFするには?

いつもお世話になります。 perl初心者です。 javascriptを使わずに複数のチェックボックスを一括で切り替える事は可能でしょうか? イメージ的には下記のような事をjavascriptを使わずにしたいです。 http://www.mdn.co.jp/webcre/Tips/Vol25/s4/4.html# 過去の回答をいろいろ見ましたがうまくいきません。 どうぞご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

質問をうまく理解していないかもしれませんが・・・ print "Content-type: text/html\n\n"; read(STDIN, $a, $ENV{'CONTENT_LENGTH'}); ($a,$b) = split( /=/ , $a); if ($a eq ""){ print "<form action=./test.cgi method=\"post\"><BR>"; print "かける数=<input type=\"text\" name=\"a\" size=5 style=\"ime-mode:disabled\"><BR>\n" ; print "<input type=\"submit\" value=\"計算\"><BR>\n" ; print "□×1<BR>\n" ; print "■×2<BR>\n" ; print "■×3<BR>\n" ; } else { print "<form method=\"post\"><BR>"; print "かける数=<input type=\"text\" name=\"a\" size=5> <BR>\n" ; print "<input type=\"submit\" value=\"計算\"><BR>\n" ; for ($i = 1;$i < 4;$i++){ $c = $b * $i; print "$b × $i = $c<BR>"; } } こういう事ですか? 携帯用のHPって作った事なくて普通にPC用ですが>_< 自分の携帯では動作確認出来ました。 あとは一つ一つの関数を理解していって自分なりに改良してみて下さい♪

eliemylove
質問者

お礼

回答が遅くなりました。 私なりにいろいろ試行錯誤しておりました。 詳細なコードまで記載して頂き助かりました。 まことにありがとうございます。

その他の回答 (2)

回答No.2

つまりこういう事ではないでしょうか? print "Content-type: text/html\n\n"; print <<"HTM"; <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=shift_jis"> <META http-equiv="Content-Language" content="ja"> <META http-equiv="content-style-type" content="text/css"> <META http-equiv="content-script-type" content="text/javascript"> <TITLE>複数のチェックボックスを一括ON/OFF</TITLE> </HEAD> <BODY> HTM read(STDIN, $a, $ENV{'CONTENT_LENGTH'}); if ($a eq ""){ print <<"HTM"; <FORM name="form1" action="./check.cgi" method=POST> <LEGEND>習得言語</LEGEND> <INPUT type="checkbox" name="c1" value="1"> HTML <INPUT type="checkbox" name="c1" value="2"> XHTML <INPUT type="checkbox" name="c1" value="3"> CSS <INPUT type="checkbox" name="c1" value="4"> JavaScript <INPUT type="checkbox" name="c1" value="5"> CGI <BR> <INPUT type="hidden" name="check" value="on"> <INPUT type="submit" value="すべて選択"> </FORM> HTM } else { print <<"HTM"; <FORM name="form1" action="./check.cgi" method=POST> <LEGEND>習得言語</LEGEND> <INPUT type="checkbox" name="c1" value="1" checked> HTML <INPUT type="checkbox" name="c1" value="2" checked> XHTML <INPUT type="checkbox" name="c1" value="3" checked> CSS <INPUT type="checkbox" name="c1" value="4" checked> JavaScript <INPUT type="checkbox" name="c1" value="5" checked> CGI <BR> <INPUT type="hidden" name="check" value="on"> <INPUT type="submit" value="すべて選択"> </FORM> HTM } print "</BODY></HTML>\n" ; 即興で作ったのでかなり汚いですがご参考になれば幸いです。

eliemylove
質問者

補足

早々のご回答ありがとうございました。 帰ってきたばかりでお礼が遅くなりました。 出来上がったときは感動しました。 本当にありがとうございました。 所で質問返しでまことに恐縮ですが、 携帯上で動く計算機を作っているのですが、今度は計算ボタンが機能しなくなりました。 1つのファイルには1つの命令しか書き込めないのでしょうか? 頑張ったのですが、うまくいきません。 かける数=[2] □×1 ■×2 ■×3 というページから 2×2=4 2×3=6 という風に出力するのですが・・・ 0×0=0 と言う風にしか出なくなりました。 あつかましくて恥ずかしいのでが お手すきの際でかまいません。 一つご教授お願いします。

  • bgbg
  • ベストアンサー率53% (94/175)
回答No.1

可能です。 submitを押されたらチェックボックスをすべてcheckedにするようなHTMLをperlで出力すればいいでしょう。

eliemylove
質問者

お礼

早々のご回答ホントにありがとうございます。 でも悲しいかな意味がわかりません>< 可能だとわかった事で一歩前進ってことで頑張ります♪

関連するQ&A