+ $attr->{name } = $name if defined $name;
+ $attr->{value} = $value if defined $value;
+ $attr->{value} = $self->{default}->{$name}
+ if not defined $attr->{value} and defined $name and defined $self->{default};
+ $attr->{type} = 'hidden' unless defined $attr->{type};
+
+ return $self->tag(input => $attr);
+}
+
+sub text {
+ my $self = shift;
+ my ($name, $value, $attr) = $self->_attr(2, @_);
+
+ $attr->{name } = $name if defined $name;
+ $attr->{value} = $value if defined $value;
+ $attr->{value} = $self->{default}->{$name}
+ if not defined $attr->{value} and defined $name and defined $self->{default};