Drupal 7 #各州没有';我无法使用Profile2

Drupal 7 #各州没有';我无法使用Profile2,drupal-7,Drupal 7,我有一个由Profile2创建的名为field_apply的复选框。然后我使用hook\u form\u alter添加一个texfield,当选中复选框时,这个texfield应该是可见的 function test_form_alter(&$form, &$form_state, $form_id) { if($form_id == 'user_register_form') { $form['profile_test']['test'] = array(

我有一个由Profile2创建的名为field_apply的复选框。然后我使用hook\u form\u alter添加一个texfield,当选中复选框时,这个texfield应该是可见的

function test_form_alter(&$form, &$form_state, $form_id) {
  if($form_id == 'user_register_form') {
    $form['profile_test']['test'] = array(
      '#type' => 'textfield',
      '#title' => 'Test text',
      '#states' => array(
        'visible' => array(
          ':input[name="field_apply"]' => array('checked' => TRUE),
        ),
      ),
    );
  }
}
但是,国家不起作用。即使未选中字段应用,文本字段仍然可见。

我解决了它:) 处于#状态的字段名称错误。 只需使用firebug,选中field_apply复选框,复制“name”属性的值并替换“field_apply”:输入[name=“field_apply”]。。。因此,在上面的示例中,states属性应该如下所示:

'visible' => array(':input[name="profile_test[field_apply][und]"]' => array('checked' => TRUE)),