• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Perl:CGI.pm:入力ボックスのクリア?)

Perl:CGI.pm:入力ボックスのクリア?

このQ&Aのポイント
  • PerlでCGIフォームの入力ボックスをクリアする方法について教えてください。
  • PerlのCGI.pmを使用して、フォームの入力ボックスをクリアする方法を知りたいです。
  • CGI.pmのperldocのサンプルコードを改造していますが、フォームの入力ボックスをクリアすることができません。どのようにすればクリアできるのでしょうか?

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

  • ベストアンサー
  • kumoz
  • ベストアンサー率64% (120/185)
回答No.2

CGI.pm の v2.15 以降であれば、-override に真を設定すれば常に -default の値が表示されるようになると思います。 textfield(-name=>'name', -default=>"" -override => 1),

TYWalker
質問者

お礼

ありがとうございます!!! これでバッチリでした。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

$name = param('name') ; 等と先に値を取り出しておいて -value=>"" を指定するのは? もしかしたら、先に取り出す必要が無いかも。

TYWalker
質問者

お礼

ありがとうございます! #! /usr/bin/perl # # simple.cgi -- CGIフォームの実験 use CGI qw/:standard/; use CGI::Carp qw/fatalsToBrowser warningsToBrowser/; $name = param('name'); print header( -expires=>'-1d', -pragma => 'no-cache', 'Cache-Control' => 'no-cache'), start_html('Simple Script'), h1('Simple Script'), start_form, "What's your name? ",textfield(-name=>'name', -value=>""),p, submit, end_form, hr,"\n"; if (param) { print "Your name is ",em($name),p, } print end_html; ということですね。 これはなぜかダメでした。 改造後も、表示後のHTMLソースを見ると What's your name? <input type="text" name="name" value="さっき入力した値" /><p /><input type="submit" name=".submit" /></form><hr /> Your name is <em>さっき入力した値</em><p /> のようになりました。 不思議ですね~

すると、全ての回答が全文表示されます。

関連するQ&A