http://www.perlmonks.org?node_id=143543


in reply to CGI.pm checkbox problem?

Among the other properties of &CGI::checkbox_group is {linebreak=>'true'}. The list of @predefined should be an arrayref:

print $q->checkbox_group ( -name=>'predefined', -values=>\@predefined, -linebreak=>'true' -default=>[ @predefined[@slicer] ], -labels=>\%predefined_labelhash, );
Those are all documented in 'perldoc CGI'.

Update: Corrected the omitted '-' in the arguments. Here is a working test:

#!/usr/bin/perl -w use strict; use CGI; my $q = CGI->new(); my @predef = ( 'abba', 'dabba', 'doo'); my @slicer = ( 1 ); my %labels = ( abba => 'pop', dabba => 'amateur', doo => "don't go the +re" ); print $q->checkbox_group ( -name => 'predefined', -values => \@predef, -default => [@predef[@slicer]],  -linebreak => 'true', -labels => \%labels,); =pod comment $ perl ~/tcgi.pl <input type="checkbox" name="predefined" value="abba" />pop<br /><inpu +t type="checkbox" name="predefined" value="dabba" checked="checked" / +>amateur<br /><input type="checkbox" name="predefined" value="doo" /> +don&#39;t go there<br /> $ =cut
xtype, maybe your @predefined array doesn't contain what you think it does.

After Compline,
Zaxo