# Adding additional attributes to form elements

**URL:** <https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754>\
**Category:** Components & MVC\
**Tags:** laminas-form\
**Created:** [February 3, 2022, 10:36pm UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754 "2022-02-03T22:36:37Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kriss\_Kals](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/kriss_kals/32/1295_2.png) [@Kriss\_Kals](https://discourse.laminas.dev/u/Kriss_Kals)\
**Post date:** [February 3, 2022, 10:36pm UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754/1 "2022-02-03T22:36:37Z")

</div>

Hello,

I have something like this in my form:

```auto
// submit
		$this->add([
			'type' => \Laminas\Form\Element\Submit::class,
			'name' => 'submit',
			'attributes' => [
				'value' => 'Send',
				'class' => 'btn btn-sm'
			]
		]);

```

Is it possible to add an icon (span with attributes) or an img image with attributes to the submit element? Just additional controlled html elements?

Thanks.

---

<div class="post-metadata">

**Author:** ![froschdesign](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/froschdesign/32/38_2.png) [@froschdesign](https://discourse.laminas.dev/u/froschdesign)\
**Post date:** [February 3, 2022, 10:38pm UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754/2 "2022-02-03T22:38:41Z")

</div>

Can you provide the desired HTML output?

---

<div class="post-metadata">

**Author:** ![froschdesign](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/froschdesign/32/38_2.png) [@froschdesign](https://discourse.laminas.dev/u/froschdesign)\
**Post date:** [February 3, 2022, 11:02pm UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754/3 "2022-02-03T23:02:36Z")

</div>

Example:

```php
$form->add(
    [
        'name' => 'send',
        'type' => Laminas\Form\Element\Button::class,
        'attributes' => [
            'class' => 'btn btn-primary',
            'type' => 'submit',
        ],
        'options' => [
            'label' => '<i class="fas fa-save"></i>Save',
            'label_options' => [
                'disable_html_escape' => true,
            ],
        ],
    ]
);

```

---

<div class="post-metadata">

**Author:** ![froschdesign](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/froschdesign/32/38_2.png) [@froschdesign](https://discourse.laminas.dev/u/froschdesign)\
**Post date:** [February 4, 2022, 9:44am UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754/4 "2022-02-04T09:44:16Z")

</div>

There is another option:

```php
<?= $this->formButton()->openTag($element) ?>

<i class="fas fa-save"></i> <?= $element->getLabel() ?>

<?= $this->formButton()->closeTag() ?>

```

> **[formButton - laminas-form - Laminas Docs](https://docs.laminas.dev/laminas-form/v3/helper/form-button/#basic-usage)**
>
> Validate and display simple and complex forms, casting forms to business objects and vice versa.

---

<div class="post-metadata">

**Author:** ![Kriss\_Kals](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/kriss_kals/32/1295_2.png) [@Kriss\_Kals](https://discourse.laminas.dev/u/Kriss_Kals)\
**Post date:** [February 4, 2022, 11:49am UTC](https://discourse.laminas.dev/t/adding-additional-attributes-to-form-elements/2754/5 "2022-02-04T11:49:13Z")

</div>

Thank you very much for your help 🙂
