InputButton extends AbstractButton

This button type renders a HTML tag <button> and takes the HTML attributes name and value as additional attributes to those defined in AbstractButton.

Since we no longer want to have any in the TYPO3 core you should use this button type to send forms

Example:

public function __construct(
    protected readonly ComponentFactory $componentFactory,
) }

public function myAction(): ResponseInterface
{
    $buttonBar = $this->moduleTemplate->getDocHeaderComponent()->getButtonBar();
    $saveButton = $this->componentFactory->createInputButton()
         ->setName('save')
         ->setValue('1')
         ->setIcon($this->iconFactory->getIcon('actions-document-save', IconSize::SMALL))
         ->setTitle('Save');
    $buttonBar->addButton($saveButton, ButtonBar::BUTTON_POSITION_LEFT, 1);
}

Table of Contents

Properties

$attributes  : array<string|int, mixed>
Attributes for the button
$classes  : string
CSS classes to apply to the rendered element
$dataAttributes  : array<string, string>
HTML data-* attributes for the control
$disabled  : bool
Whether the button is in disabled state
$form  : string
$icon  : Icon|null
Optional icon to display on the button
$name  : string
$showLabelText  : bool
Whether to show the button's label text (from title property).
$title  : string
Title/label text for the control
$value  : string

Methods

__toString()  : string
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
getAttributes()  : array<string, string>
getClasses()  : string
getDataAttributes()  : array<string|int, mixed>
getForm()  : string
getIcon()  : Icon|null
getName()  : string
getShowLabelText()  : bool
getTitle()  : string
getType()  : string
Returns the fully qualified class name as the component type identifier.
getValue()  : string
isDisabled()  : bool
isValid()  : bool
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
render()  : string
Implementation from ButtonInterface This object is an abstract, so no implementation is necessary
setAttributes()  : static
setClasses()  : static
setDataAttributes()  : static
setDisabled()  : static
setForm()  : static
setIcon()  : static
setName()  : static
setShowLabelText()  : static
setTitle()  : static
setValue()  : static

Properties

$attributes

Attributes for the button

protected array<string|int, mixed> $attributes = []

$classes

CSS classes to apply to the rendered element

protected string $classes = ''

$dataAttributes

HTML data-* attributes for the control

protected array<string, string> $dataAttributes = []

Key-value pairs (e.g., ['action' => 'save'])

$disabled

Whether the button is in disabled state

protected bool $disabled = false

$icon

Optional icon to display on the button

protected Icon|null $icon = null

$showLabelText

Whether to show the button's label text (from title property).

protected bool $showLabelText = false

If false, only the icon is shown (label is used for title attribute).

$title

Title/label text for the control

protected string $title = ''

Methods

__toString()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public __toString() : string
Return values
string

getAttributes()

public getAttributes() : array<string, string>
Return values
array<string, string>

getClasses()

public getClasses() : string
Return values
string

getDataAttributes()

public getDataAttributes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getForm()

public getForm() : string
Return values
string

getName()

public getName() : string
Return values
string

getShowLabelText()

public getShowLabelText() : bool
Return values
bool

getTitle()

public getTitle() : string
Return values
string

getType()

Returns the fully qualified class name as the component type identifier.

public getType() : string

This is used to identify the specific component type in validation and rendering.

Return values
string

The fully qualified class name (e.g., 'TYPO3\CMS\Backend\Template\Components\Buttons\LinkButton')

getValue()

public getValue() : string
Return values
string

isDisabled()

public isDisabled() : bool
Return values
bool

isValid()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public isValid() : bool
Return values
bool

True if the component is valid and can be rendered, false otherwise

render()

Implementation from ButtonInterface This object is an abstract, so no implementation is necessary

public render() : string
Return values
string

setAttributes()

public setAttributes(array<string, string> $attributes) : static
Parameters
$attributes : array<string, string>
Return values
static

setClasses()

public setClasses(string $classes) : static
Parameters
$classes : string
Return values
static

setDataAttributes()

public setDataAttributes(array<string|int, mixed> $dataAttributes) : static
Parameters
$dataAttributes : array<string|int, mixed>
Return values
static

setDisabled()

public setDisabled(bool $disabled) : static
Parameters
$disabled : bool
Return values
static

setForm()

public setForm(string $form) : static
Parameters
$form : string
Return values
static

setIcon()

public setIcon(Icon|null $icon) : static
Parameters
$icon : Icon|null
Return values
static

setName()

public setName(string $name) : static
Parameters
$name : string
Return values
static

setShowLabelText()

public setShowLabelText(bool $showLabelText) : static
Parameters
$showLabelText : bool
Return values
static

setTitle()

public setTitle(string $title) : static
Parameters
$title : string
Return values
static

setValue()

public setValue(string $value) : static
Parameters
$value : string
Return values
static

        
On this page

Search results