Adicionar texto após o campo de entrada com a API do formulário (sufixo do campo)

9

Estou criando um formulário com um campo de texto. Após o campo de entrada, gostaria de ter algum texto. Como isso:

Label *
|________| some text
Field description

O código que eu uso é:

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

Existe uma maneira de adicionar "algum texto" após o campo de entrada dessa maneira? Devo enviar o código HTML manualmente via #markup? Existe alguma maneira de fazer isso via formulário alterar? Ou uma função temática?

dschenk
fonte

Respostas:

20

Você pode usar a #field_suffixpropriedade exatamente para isso:

Texto ou código que é colocado diretamente após um campo de texto. Isso pode ser usado para adicionar uma unidade a um campo de texto.

Por exemplo:

$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
fonte
Obrigado. Isso funciona para mim. Existe alguma maneira para remover a extensão adicional vinda "<span class =" campo-sufixo "> <span class =" marca "> </ span> </ span>"