使用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