Text nach Eingabefeld mit Formular-API hinzufügen (Feldsuffix)

9

Ich erstelle ein Formular mit einem Textfeld. Nach dem Eingabefeld hätte ich gerne Text. So was:

Label *
|________| some text
Field description

Der Code, den ich benutze, ist:

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

Gibt es eine Möglichkeit, auf diese Weise "Text" nach dem Eingabefeld einzufügen? Muss ich den HTML-Code manuell über #markup ausgeben? Gibt es eine Möglichkeit, dies über die Formularänderung zu tun? Oder eine Themenfunktion?

dschenk
quelle

Antworten:

20

Sie können die #field_suffixEigenschaft genau dafür verwenden:

Text oder Code, der direkt hinter einem Textfeld platziert wird. Dies kann verwendet werden, um einem Textfeld eine Einheit hinzuzufügen.

Zum Beispiel:

$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
quelle
Vielen Dank. Das funktioniert bei mir. Gibt es eine Möglichkeit, die zusätzliche Spanne zu entfernen, die "<span class =" field -uffix "> <span class =" checkmark "> </ span> </ span>"