ButtonType Field
Edit this pageWarning: You are browsing the documentation for Symfony 4.2, which is no longer maintained.
Read the updated version of this page for Symfony 6.3 (the current stable version).
ButtonType Field
A simple, non-responsive button.
Rendered as | button tag |
Inherited options | |
Parent type | none |
Class | ButtonType |
Tip
The full list of options defined and inherited by this form type is available running this command in your app:
1 2
# replace 'FooType' by the class name of your form type
$ php bin/console debug:form FooType
Inherited Options
The following options are defined in the
BaseType class.
The BaseType
class is the parent class for both the button
type
and the FormType, but it is not part
of the form type tree (i.e. it cannot be used as a form type on its own).
attr
type: array
default: []
If you want to add extra attributes to the HTML representation of the button,
you can use attr
option. It's an associative array with HTML attribute
as a key. This can be useful when you need to set a custom class for the button:
1 2 3 4 5 6
use Symfony\Component\Form\Extension\Core\Type\ButtonType;
// ...
$builder->add('save', ButtonType::class, [
'attr' => ['class' => 'save'],
]);
disabled
type: boolean
default: false
If you don't want a user to be able to click a button, you can set the disabled option to true. It will not be possible to submit the form with this button, not even when bypassing the browser and sending a request manually, for example with cURL.
label
type: string
default: The label is "guessed" from the field name
Sets the label that will be displayed on the button. The label can also be directly set inside the template:
1
{{ form_widget(form.save, { 'label': 'Click me' }) }}
1
<?= $view['form']->widget($form['save'], ['label' => 'Click me']) ?>
translation_domain
type: string
default: messages
This is the translation domain that will be used for any labels or options that are rendered for this button.