Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Perl';s HTML::模板_Perl_Radio Button - Fatal编程技术网

使用Perl';s HTML::模板

使用Perl';s HTML::模板,perl,radio-button,Perl,Radio Button,这是一个两列的表,左侧列中有标签,右侧列中有表单元素。我试图在第二栏中找到椅子颜色的单选按钮。但他们总是排在第一列 以下是相关代码: use HTML::Template; use CGI qw(:standard); my $form = ''; $form .= start_form . table ({-width=>'100%'}, Tr([ td (b ('Chair color:')), td (radio_group(-name =

这是一个两列的表,左侧列中有标签,右侧列中有表单元素。我试图在第二栏中找到椅子颜色的单选按钮。但他们总是排在第一列

以下是相关代码:

use HTML::Template;
use CGI qw(:standard);

my $form = '';

$form .= start_form .
  table ({-width=>'100%'},
    Tr([
      td (b ('Chair color:')),
        td (radio_group(-name => 'certificate_type',
                        -values=>['blue','white','green'],)),
      td ([b ('Username:'),  $ENV{REMOTE_USER}]),
      td ([b ('Full name:'), $PARAMS{CURRENT_FULLNAME}]),
      td ([b ('Email:'),     $PARAMS{EMAIL}]),
   ])) . submit('Submit') . reset . end_form;
(更好的办法是将按钮放在第二列中,但要垂直堆叠。)

我想您希望第一列中的“椅子颜色”位于第二列中三个单选按钮的左侧

问题是您将“椅子颜色”和
radio_group
放在两个单独的
td
元素中,因此它们将显示在单独的行中

您需要将它们一起传递到一个
td
调用,因为您有最后三行

此外,对于
无线电组
-columns=>1
参数将强制将它们合并到一列中

这段代码似乎可以满足您的需要

我的$form=
启动表格
. 表({-width=>'100%'),
Tr([
运输署([
b(“椅子颜色:”),
无线电组(
-名称=>“证书类型”,
-值=>[qw/蓝白绿/],
-列=>1
)
]),
td([b('Username:'),'remote user']),
td([b('Full name:'),'current Full name']),
td([b('Email:'),'Email']),
])
)
. 提交(“提交”)
. 重置
. 结束形式;

这看起来像一个五列的表格。@mob:CGI不是这样做的。如果您希望所有三个单选标签和按钮都位于第二列,但不是垂直堆叠,而是在同一行上,甚至带有标签“椅子颜色”,您会这样做吗?@rlandster:然后将我代码中的
-columns=>1
更改为
-rows=>1