0

hook_form_alter を作成し、選択オプションに応じて入力値を変更したいと考えています。

名前の値をキャッチします:

global $user;
$user_fields = user_load($user->uid);
$name = $user_fields->field_user_name['und']['0']['value'];

実際に私はフォームの状態を使用します:

$form['field_name'] = array(
    '#type' => 'textfield',
    '#title' => t('Name'),
    '#default_value' => $name,
    '#weight' => 4,
    '#states' => array(
        'visible' => array(
            'select[name="who_is_registering"]' => array('value' => REGISTRATION_REGISTRANT_TYPE_ANON),
            '#default_value' => '',
        ),
        'required' => array(
            'select[name="who_is_registering"]' => array('value' => REGISTRATION_REGISTRANT_TYPE_ANON),
        ),                  
    ),
);

目標は、選択値がanon(REGISTRATION_REGISTRANT_TYPE_ANON)と異なる場合に名前を設定し、入力を非表示にすることです...そして他の場合には空のフィールドを表示します。

4

0 に答える 0