如何在Perl CGI中处理元素值?

时间:2012-12-18 14:36:56

标签: perl cgi

我想将选定的单选按钮的id名称和一些div元素数据传递给服务器,并在服务器端处理这些数据。

以下是我的CGI代码。

use strict;
use CGI;
print

"Content-type:text/html\r\n\r\n",
"<html>",
"<body>",
"<div style='float:left'>",
"<input type='radio' name='selections' id='red'>",
"<input type='radio' name='selections' id='blue'>",
"<input type='radio' name='selections' id='green'>",
"</div>",
"<div style='float:left'>",
"<div style='float:left' id='redtime'>red time</div>",
"<div style='float:left' id='blutime'>blue time</div>",
"<div style='float:left' id='greentime'>green time</div>",
"</div>",

"<input type='button' value='clickme'/>",
"</body>",
"</html>";

在上面的CGI文件中,我需要传递所选单选按钮的id值以及任何div元素的值。数据。我如何在CGI中做到这一点?

1 个答案:

答案 0 :(得分:3)

id旨在供客户端使用。如果你想获得它的服务器端,那么你需要使用JavaScript来生成隐藏的输入或使用XMLHttpRequest发出请求。

改为使用value

然后你就是:

my $value = $instance_of_CGI->param('name_of_radio_group');

您还需要提交提交按钮type="submit"(提交表单)而不是type="button"(除非您将JavaScript绑定到它上面,否则不会执行任何操作)。


您的表单控件也需要放在<form>元素中,action属性设置为将处理数据的脚本的URI。


我还建议您将所有表单标签放在与标记中的相关的输入旁边,而不仅仅是CSS,并且为它们使用<label>元素,而不是{ {1}}元素。


  

<div>

请勿手动执行此操作。您正在使用CGI.pm。

"Content-type:text/html\r\n\r\n",