HTML-FormBuilder
view release on metacpan or search on metacpan
example/app.psgi view on Meta::CPAN
sub get_form {
my $form = HTML::FormBuilder::Validation->new(data => {
name => 'openAccForm',
id => 'openAccForm',
class => 'formObject grd-row-padding',
method => 'post',
action => '/test',
});
my $fieldset = $form->add_fieldset({ legend => 'details' });
$fieldset->add_field({
'label' => {
'text' => 'Salutation',
'for' => 'salutation',
},
'input' => HTML::FormBuilder::Select->new(
'id' => 'salutation',
'name' => 'salutation',
'options' => [ { value => '', text => 'Select Salutation' }, { value => 'Mr', text => 'Mr' }, { value => 'Ms', text => 'Ms' }, { value => 'Dr', text => 'Dr' } ],
),
lib/HTML/FormBuilder/FieldSet.pm view on Meta::CPAN
# properly
# Returns : a piece of form HTML code for a fieldset foreword
# Parameters : input_field, stacked
# Comments :
# See Also :
#####################################################################
sub _build_fieldset_foreword {
my $self = shift;
my $data = $self->{data};
# fieldset legend
my $legend = '';
if (defined $data->{'legend'}) {
$legend = qq{<legend>$data->{legend}</legend>};
undef $data->{'legend'};
}
# header at the top of the fieldset
my $header = '';
if (defined $data->{'header'}) {
$header = qq{<h2>$data->{header}</h2>};
undef $data->{'header'};
}
# message at the top of the fieldset
my $comment = '';
if (defined $data->{'comment'}) {
$comment = qq{<div class="$self->{classes}{comment}"><p>$data->{comment}</p></div>};
undef $data->{'comment'};
}
return $legend . $header . $comment;
}
#####################################################################
# Usage : $self->_wrap_fieldset($fieldset_html)
# Purpose : wrap fieldset html by template
# Returns : HTML
# Comments :
# See Also :
#####################################################################
sub _wrap_fieldset {
t/formbuilder_output.t view on Meta::CPAN
use HTML::FormBuilder;
use HTML::FormBuilder::Select;
my ($form_obj, $result, $expect_result);
$form_obj = HTML::FormBuilder->new(
data => {id => 'testid'},
classes => $classes
);
my $fieldset = $form_obj->add_fieldset({
legend => 'a legend',
header => 'header',
comment => 'comment'
});
my $input_field_amount = {
'label' => {
'text' => 'Amount',
'for' => 'amount',
'tooltip' => {
desc => "this is a tool tip",
t/formbuilder_output.t view on Meta::CPAN
},
};
$fieldset->add_field($input_field_amount);
$fieldset->add_field($input_field_button);
lives_ok(sub { $result = $form_obj->build }, 'build tooltip ok');
$expect_result = <<EOF;
<form id="testid" method="get"><div class="rbox form">
<div class="rbox-wrap">
<fieldset><legend>a legend</legend><h2>header</h2><div class="grd-grid-12"><p>comment</p></div><div class="grd-row-padding row clear"><div class="extra_tooltip_container"><label for="amount"><em class="required_asterisk">**</em>Amount</label>...
<span class="tl"> </span><span class="tr"> </span><span class="bl"> </span><span class="br"> </span>
</div>
</div>
</form>
EOF
chomp $expect_result;
is($result, $expect_result, 'tooltip and call_customer_support');
# test heading
$form_obj = HTML::FormBuilder->new(
t/formbuilder_output.t view on Meta::CPAN
chomp($expect_result);
is($result, $expect_result, 'heading result ok');
# test build_confirmation_button_with_all_inputs_hidden
$form_obj = HTML::FormBuilder->new(
data => {id => 'testid'},
classes => $classes
);
$fieldset = $form_obj->add_fieldset({
legend => 'a legend',
header => 'header',
comment => 'comment'
});
$fieldset->add_field($input_field_amount);
lives_ok(
sub {
$result = $form_obj->build_confirmation_button_with_all_inputs_hidden;
},
'build_confirmation_button_with_all_inputs_hidden ok'
( run in 1.113 second using v1.01-cache-2.11-cpan-49f99fa48dc )