You are browsing the Symfony 4 documentation, which changes significantly from Symfony 3.x. If your app doesn't use Symfony 4 yet, browse the Symfony 3.4 documentation.

ResetType Field

ResetType Field

A button that resets all fields to their original values.

Rendered as input reset tag
Inherited options
Parent type ButtonType
Class ResetType

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

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\ResetType;
// ...

$builder->add('save', ResetType::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:

  • Twig
    1
    {{ form_widget(form.save, { 'label': 'Click me' }) }}
    
  • PHP
    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.

label_translation_parameters

type: array default: []

The content of the label option is translated before displaying it, so it can contain translation placeholders. This option defines the values used to replace those placeholders.

Given this translation message:

1
2
# translations/messages.en.yaml
form.order.reset: 'Reset an order to %company%'

You can specify the placeholder values as follows:

1
2
3
4
5
6
7
8
9
use Symfony\Component\Form\Extension\Core\Type\ResetType;
// ...

$builder->add('send', ResetType::class, [
    'label' => 'form.order.reset',
    'label_translation_parameters' => [
        '%company%' => 'ACME Inc.',
    ],
]);

The label_translation_parameters option of buttons is merged with the same option of its parents, so buttons can reuse and/or override any of the parent placeholders.

attr_translation_parameters

type: array default: []

New in version 4.3: The attr_translation_parameters option was introduced in Symfony 4.3.

The content of the title and placeholder values defined in the attr option is translated before displaying it, so it can contain translation placeholders. This option defines the values used to replace those placeholders.

Given this translation message:

1
2
3
# translations/messages.en.yaml
form.order.id.placeholder: 'Enter unique identifier of the order to %company%'
form.order.id.title: 'This will be the reference in communications with %company%'

You can specify the placeholder values as follows:

1
2
3
4
5
6
7
8
9
$builder->add('id', null, [
    'attr' => [
        'placeholder' => 'form.order.id.placeholder',
        'title' => 'form.order.id.title',
    ],
    'attr_translation_parameters' => [
        '%company%' => 'ACME Inc.',
    ],
]);

The attr_translation_parameters option of children fields is merged with the same option of their parents, so children can reuse and/or override any of the parent placeholders.

This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.