Note the upgraded forum! If you are experiencing issues logging in, you may need to reset your password which should send an email. If the email doesn't arrive, be sure to check your spam folder just in case.

Copy type in forms

edited January 2017 in Feature Requests
If a "copy" field type is set, and the value is an empty string and "display_label" is set to false, the field key is still written into the element. Not a big issue, but it seems inconsistent, and even setting the "label" to empty doesn't correct this.

eg
'some_field' => array('type' => 'copy', 'tag' => 'div', 'value' => '', 'id' => 'some-field', 'row_class' => 'some-row-name', 'display_label' => FALSE, 'label' => '');

The above will still echo out "some_field"

Comments

  • edited 8:42AM
    There's a method Form_builder::simple_field_value() that is used to determine the text value for fields like 'copy', 'section' and 'fieldset'. It first looks to see if there is a non empty "value" then "label" and then "name". By using name as an option it allows you to do the following:
    $fields['My copy goes here.'] = array('type' => 'copy');
    I'm curious why you would create a field like that that is empty.
  • edited 8:42AM
    If it is a container for perhaps an AJAX callback. An alternative would be to use a custom field type and use a function parameter like so:
    $fields['some_value'] = array('type' => 'custom', 'value' => '<div id="some_value"></div>');
  • edited 8:42AM
    Yes - exactly, it was for ajax injection. But your suggestion covers that. Thanks.
Sign In or Register to comment.