2

我想将选定的单选按钮的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 中做到这一点?

4

1 回答 1

3

id旨在用于客户端如果您想在服务器端获取它,则需要使用 JavaScript 生成隐藏输入或使用 XMLHttpRequest 发出请求。

利用value

然后你只需:

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

您还需要制作提交按钮type="submit"(提交表单)而不是type="button"(除非您将 JavaScript 绑定到它,否则它什么也不做)。


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


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


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

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

print $instance_of_CGI->header();
于 2012-12-18T15:03:58.980 回答