duck.html.components.textarea¶
Textarea HTML Component.
This module provides a customizable TextArea component for handling multi-line text input in HTML forms.
Module Contents¶
Classes¶
A reusable HTML |
API¶
- class duck.html.components.textarea.TextArea(element: Optional[str] = None, properties: Optional[Dict[str, str]] = None, props: Optional[Dict[str, str]] = None, style: Optional[Dict[str, str]] = None, inner_html: Optional[Union[str, str, float]] = None, children: Optional[List[duck.html.components.HtmlComponent]] = None, **kwargs)[source]¶
Bases:
duck.html.components.InnerComponentA reusable HTML
<textarea>component for multi-line text input.- Parameters:
name – The name attribute of the textarea, used for form submissions.
placeholder – Placeholder text displayed inside the textarea before user input.
required – Whether the textarea is a required field in a form.
maxlength – The maximum number of characters allowed in the textarea.
minlength – The minimum number of characters.
disabled – Whether input is disabled.
Example:
textarea = TextArea( name="user_message", placeholder="Enter your message...", required=True, maxlength=500 ) component.add_child(textarea)Generates:
<textarea name="user_message" placeholder="Enter your message..." required maxlength="500"></textarea>Default Styling:
Uses padding, borders, and font settings from the
Themeclass.Minimum width is set to
50%and minimum height to80px.
Returns:
A
<textarea>HTML element.
Initialization
Initialize an HTML component.
- Parameters:
element – The HTML element tag name (e.g., textarea, input, button). Can be None, but make sure element is returned by get_element method.
accept_inner_html – Whether the HTML component accepts an inner body (e.g., inner-body-here).
inner_html – Inner html to add to the HTML component. Defaults to None.
properties – Dictionary for properties to initialize the component with.
props – Just same as properties argument (added for simplicity).
style – Dictionary for style to initialize the component with.
**kwargs – Extra keyword arguments
- Raises:
HtmlComponentError – If ‘element’ is not a string or ‘inner_html’ is set but ‘accept_inner_html’ is False.