Perl CGI-如何删除文本字段的内容?

Perl CGI-如何删除文本字段的内容?,perl,cgi,fastcgi,cgi-bin,Perl,Cgi,Fastcgi,Cgi Bin,因此,我对Perl中的CGI编程一无所知。 问题很简单。是否有机会删除CGI中文本字段的内容 我必须写一个代码,有一些弹出菜单,提交按钮和文本字段(区域) 当我点击submit按钮时,程序从弹出菜单中读取值。 任务是将此内容复制到文本字段中,然后当我从弹出菜单中选择另一个元素时(当然,单击submit按钮),让新内容写入文本字段以替换旧内容 我认为perldoc.perl.org只提供了一点关于CGI编程的信息。我有很多问题要问妈妈…:( 任何帮助都是合适的!我想,您描述的是:当您单击“提交”按

因此,我对Perl中的CGI编程一无所知。 问题很简单。是否有机会删除CGI中文本字段的内容

我必须写一个代码,有一些弹出菜单,提交按钮和文本字段(区域)

当我点击submit按钮时,程序从弹出菜单中读取值。 任务是将此内容复制到文本字段中,然后当我从弹出菜单中选择另一个元素时(当然,单击submit按钮),让新内容写入文本字段以替换旧内容

我认为perldoc.perl.org只提供了一点关于CGI编程的信息。我有很多问题要问妈妈…:(


任何帮助都是合适的!

我想,您描述的是:当您单击“提交”按钮时,您的cgi脚本将根据您在表单中输入的参数运行。然后,我要做的是:写回一些内容并再次打印表单-使用不同的值

因此,即使这不是完成这类事情的完美方式(对于简单的表单元素替换,您应该在客户端使用javascript——您不需要cgi后端脚本),让我们看看cgi脚本可能是什么样子

首先,重要的是要知道你是如何写你的表格的。让我们假设你用打印的“艰难方式”来写。 脚本要做的是解析输入,然后将其作为值添加到输出中

use CGI;
my $q = CGI->new;

# get the value from the popup / html select
my $popup_value = $q->param('popup_menu'); # name of the <select name="..."> in your html
# ...

# writing the form
print $q->header;
# some more prints with form etc.
print textarea( -name    => 'text_area',
                -default => $popup_value // '', # will use empty string on first call
              );
# Don't turn off autoescaping !

这毫无意义。提交表单后,你怎么能“从弹出菜单中选择另一个元素”?那时没有菜单,甚至没有HTML页面。Perl是服务器端。Javascript是客户端。我不遵循你的工作流程,但删除CGI对象的内容可以像这样:$CGI->param(-name=>'foo',-value=>“”);
my @text_values = ('', 'First text', 'second text', 'third text');
my $popup_value = $q->param('popup_menu') || 0; # default index.
# now use 1,2,3, ... as values in your popup_menu options
# ...
print textarea( -name    => 'text_area',
                -default => $text_values[$popup_value] );