NAME
Data::HTML::Element::Form - Data object for HTML form element.
SYNOPSIS
use Data::HTML::Element::Form;
my $obj = Data::HTML::Element::Form->new(%params);
my $action = $obj->action;
my $css_class = $obj->css_class;
my $data = $obj->data;
my $data_type = $obj->data_type;
my $enctype = $obj->enctype;
my $id = $obj->id;
my $label = $obj->label;
my $method = $obj->method;
METHODS
new
my $obj = Data::HTML::Element::Form->new(%params);
Constructor.
actionForm action.
Default value is undef.
css_classForm CSS class.
Default value is undef.
dataData content. It's reference to array.
Data type of data is described in 'data_type' parameter.
Default value is [].
data_typeData type for content.
Possible value are: cb plain tags
The 'cb' content is code reference. The 'plain' content are string(s). The 'tags' content is structure described in Tags.
Default value is 'plain'.
enctypeForm enctype, attribute which specifies how the form-data should be encoded when submitting it to the server.
Possible values are:
(undefined - same as application/x-www-form-urlencoded)
application/x-www-form-urlencoded
multipart/form-data
text/plain
Default value is undef.
idForm identifier.
Default value is undef.
labelForm label.
Default value is undef.
methodForm method.
Default value is 'get'.
Possible methods are: get and post
Returns instance of object.
action
my $action = $obj->action;
Get form action.
Returns string.
css_class
my $css_class = $obj->css_class;
Get CSS class for form.
Returns string.
data
my $data = $obj->data;
Get data inside button element.
Returns reference to array.
data_type
my $data_type = $obj->data_type;
Get button data type.
Returns string.
enctype
my $enctype = $obj->enctype;
Get enctype, attribute which specifies how the form-data should be encoded when submitting it to the server.
Returns string.
id
my $id = $obj->id;
Get form identifier.
Returns string.
label
my $label = $obj->label;
Get form label.
Returns string.
method
my $method = $obj->method;
Get form method.
Returns string.
ERRORS
new():
Parameter 'css_class' has bad CSS class name.
Value: %s
Parameter 'css_class' has bad CSS class name (number on begin).
Value: %s
Parameter 'data' must be a array.
Value: %s
Reference: %s
Parameter 'data' in 'plain' mode must contain reference to array with scalars.
Parameter 'data' in 'tags' mode must contain reference to array with references to array with Tags structure.
Parameter 'data_type' has bad value.
Parameter 'enctype' has bad value.
Value: %s
Parameter 'method' has bad value.
Value: %s
EXAMPLE1
use strict;
use warnings;
use Data::HTML::Element::Form;
my $obj = Data::HTML::Element::Form->new;
# Print out.
print 'Method: '.$obj->method."\n";
# Output:
# Method: get
EXAMPLE2
use strict;
use warnings;
use Data::HTML::Element::Form;
my $obj = Data::HTML::Element::Form->new(
'action' => '/action.pl',
'css_class' => 'form',
'enctype' => 'multipart/form-data',
'id' => 'form-id',
'label' => 'Form label',
'method' => 'post',
);
# Print out.
print 'Action: '.$obj->action."\n";
print 'CSS class: '.$obj->css_class."\n";
print 'Enctype: '.$obj->enctype."\n";
print 'Id: '.$obj->id."\n";
print 'Label: '.$obj->label."\n";
print 'Method: '.$obj->method."\n";
# Output:
# Action: /action.pl
# CSS class: form
# Enctype: multipart/form-data
# Id: form-id
# Label: Form label
# Method: post
DEPENDENCIES
Error::Pure, List::Util, Mo, Mo::utils::CSS, Readonly.
REPOSITORY
https://github.com/michal-josef-spacek/Data-HTML-Element
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© 2022-2024 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.17