public static RenderElement::setAttributes(&$element, $class = array())
Sets a form element's class attribute.
Adds 'required' and 'error' classes as needed.
Parameters
array $element: The form element.
array $class: Array of new class names to be added.
Overrides ElementInterface::setAttributes
File
- core/lib/Drupal/Core/Render/Element/RenderElement.php, line 129
Class
- RenderElement
- Provides a base class for render element plugins.
Namespace
Drupal\Core\Render\Element
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | public static function setAttributes(& $element , $class = array ()) { if (! empty ( $class )) { if (!isset( $element [ '#attributes' ][ 'class' ])) { $element [ '#attributes' ][ 'class' ] = array (); } $element [ '#attributes' ][ 'class' ] = array_merge ( $element [ '#attributes' ][ 'class' ], $class ); } // This function is invoked from form element theme functions, but the // rendered form element may not necessarily have been processed by // \Drupal::formBuilder()->doBuildForm(). if (! empty ( $element [ '#required' ])) { $element [ '#attributes' ][ 'class' ][] = 'required' ; $element [ '#attributes' ][ 'required' ] = 'required' ; $element [ '#attributes' ][ 'aria-required' ] = 'true' ; } if (isset( $element [ '#parents' ]) && isset( $element [ '#errors' ]) && ! empty ( $element [ '#validated' ])) { $element [ '#attributes' ][ 'class' ][] = 'error' ; $element [ '#attributes' ][ 'aria-invalid' ] = 'true' ; } } |
Please login to continue.