WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:フォームで定義した変数の値を変えることができますか?

0:[投稿] Beethoven [2003/05/23 17:26 ][環境:WIN98 UNIX]

以前質問させていただいた者ですが、よろしくお願いします。
初歩的な質問で申し訳ありません。

フォームの中で、入力項目以外の変数に値を代入する場合があります。
たとえば、

<INPUT TYPE="hidden" NAME="action" VALUE="kakunin">

では、action という変数に "kakunin"という内容を入れています。
この、action の内容を、サブルーチンの中で変える方法はないでしょうか。
どうかよろしくお願いします。


1:[回答] のぐりん [MAIL] [2003/05/23 19:03 ]

JavaScriptで変更可能です。

Form名.action.value = "変えたい値";

しかし、Form名.actionは予約語ですので、
このhiddenの名前は変えたほうがいいです。
http://tohoho.wakusei.ne.jp/js/form.htm#action


2:[回答] ひじ [2003/05/23 23:09 ]

DOM Level 1を理解できるUAなら、name属性値がactionだろうがなんだろうが
form.elements.namedItem('action') でできます。

Mozilla 1.0(Mac), MSIE 5.1 for Mac では問題ないです。
例によっていい加減な実装のWinIEがネックになる可能性がありますが。


3:[回答] Beethoven [2003/05/24 07:59 ]

のぐりんさん、ひじさん、ありがとうございます。
お二人の記述を完全には理解できていないかも知れませんが、
私のやりたいのは、
FORM 画面から受け取った値を Perl の中で変えるということなんですが … 。


4:[質問] Beethoven [2003/05/24 08:01 ]

すみません、『回答』ではなく、『質問』です。


5:[回答] バギンズ [2003/05/24 13:03 ]

たとえば、%inにフォームの内容が入ったとして、

if ($in{'action'} = 'kakunin') { $in{'action'} = '変更したい値' }

とかですか?


6:[回答] バギンズ [2003/05/24 13:07 ]

しまった(^_^;)
訂正

if ($in{'action'} eq 'kakunin') { $in{'action'} = '変更したい値'; }


7:[保留] Beethoven [2003/05/24 17:15 ]

バギンズさん、ありがとうございます。
早速バギンズさんから教えていただいたとおりにやってみましたが、
$in{'action'} = '変更したい値';
というふうに代入するとエラーになり、これが解決できずにお返事が遅れてしまいました。すみませんでした。
エラーを解決して、またご報告に伺います。とりあえず、保留にさせていただきたいと思います。またよろしくお願いします。


8:[質問] Beethoven [2003/05/27 06:37 ]

のぐりんさん、ひじさん、バギンズさんから教えていただき、その後長い間保留にしてすみません。やはり、

(1)$in{'female_no'}=$no;

ではエラーになります。もちろん、

(2)$no=$in{'female_no'};

はエラーになりません。

以前、(1)をやったときもエラーになっていたと思うんですが、どこかおかしいところがあるんでしょうか?

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World