I came across this problem while working on #2731, where I needed to target some form elements in CSS. This turned out to not be as easy as expected, because the names of the form elements were too generic (like label
, delta
, and description
). The requirement was to add more specific classes to the wrapper <div>
s of the form elements.
I will explain in code examples, but instead of using the code in that specific use case, I will use more simplified and generic examples. So say you have this form definition:
$form['parent'] = array(
'#parents' => array(),
);
$form['parent']['checkbox'] = array(
'#type' => 'checkbox',
'#title' => t('Do something'),
);
$form['parent']['textfield'] = array(
'#type' => 'textfield',
'#title' => t('Enter some text'),
);
This will produce the following code:
<form class="some-form" id="some-form" >
<div>
<div class="form-item form-type-checkbox form-item-checkbox">
<label class="option" for="edit-checkbox">Do something </label>
<input type="checkbox" id="edit-checkbox" name="checkbox" class="form-checkbox">
</div>
<div class="form-item form-type-textfield form-item-textfield" >
<label for="edit-textfield">Enter some text </label>
<input type="text" id="edit-textfield" name="textfield" class="form-text">
</div>
</div>
</form>
...
Recent comments
The horrors of cut/paste! Brilliant, thanks.
SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value:
The issue could be related to the Emojis in the body field. Can you check the Status report (admin/reports/status) for the item MySQL Database 4-byte UTF-8 support? To display Emojis, 4-byte UTF...
SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value:
@argiepiano, thanks a lot! For Webform it will be always "webform_client_form_NID", correct?
How to add Webform ID to Captcha module?