Tengo un módulo personalizado e intento ocultar un grupo de campo CCK usando "#states" cuando se selecciona un determinado elemento en una lista de selección desplegable.
He intentado usar estados desde hook_form_alter (), así:
$form['group_mygroup']['#states']['invisible'] = array(
':input[name="field_trigger[' . LANGUAGE_NONE. ']"]' => array( 'value' => 'hide' ),
);
Esto no parece hacer nada.
He buscado cambiar el peso de mi módulo según varios sitios como http://proofgroup.com/blog/2008/dec/modifying_cck_fieldgroups_hook_form_alter .
pero aún en vano. Puedo ocultar todos los elementos del formulario dentro del grupo de campos usando estados pero no el grupo de campos en sí. ¿Alguien tiene alguna idea?
7
javascript
thepearson
fuente
fuente
Respuestas:
Yo uso este gancho para ocultar mi grupo de campo. Solo es visible si la casilla de verificación
field_myfield
está marcada.Para explorar la
$element
variable en este gancho uséen lugar de
dpm()
.Espero que haya ayudado :)
fuente
Los grupos de campo no están definidos en la raíz de
$form
. Parece que deberías usar no$form['group_mygroup']
, pero$form['#fieldgroups']['group_mygroup']
.fuente
Puede mirar el módulo de ejemplo para ver cómo ocultan los conjuntos de campos . Basado en eso, creo que su código debería ser:
fuente