Dodaj tekst po polu wejściowym z formularzem API (sufiks pola)

10

Tworzę formularz z polem tekstowym. Po polu wejściowym chciałbym mieć trochę tekstu. Lubię to:

Label *
|________| some text
Field description

Używam kodu:

$form['a_textfield'] = array(
    '#type' => 'textfield',
    '#title' => t('A Label'),
    '#size' => 10,
    '#maxlength' => 15,
    '#description' => t('A Field description'),
    '#required' => TRUE,
);

Czy istnieje sposób dodania w ten sposób „pola tekstowego” po polu wejściowym? Czy mam wypisywać kod HTML ręcznie za pomocą #markup? Czy można to zrobić za pomocą formularza alter? Czy funkcja tematyczna?

dschenk
źródło

Odpowiedzi:

21

Możesz użyć #field_suffixwłaściwości dokładnie do tego:

Tekst lub kod umieszczony bezpośrednio po polu tekstowym. Można tego użyć, aby dodać jednostkę do pola tekstowego.

Na przykład:

$form['a_textfield'] = array(
  '#type' => 'textfield',
  '#title' => t('A Label'),
  '#size' => 10,
  '#maxlength' => 15,
  '#description' => t('A Field description'),
  '#required' => TRUE,
  '#field_suffix' => 'Suffix'
);
Clive
źródło
1
Dzięki. To działa dla mnie. Czy jest jakiś sposób na usunięcie dodatkowego zakresu nadchodzącego "<span class =" field-sufiks "> <span class =" checkmark "> </span> </span>"