He creado un tipo de contenido llamado "menú principal". Tengo pocas listas seleccionadas que dependen unas de otras. Quería mostrar una lista diferente cuando se seleccionan diferentes casillas de verificación. Descubrí que necesito usar Ajax para editar el formulario para lograrlo, pero ¿alguien puede decirme cómo usar Ajax con hook_form_alter?
La identificación del formulario que se supone que debo editar es "main_menu_node_form". Cuando trato de acceder a este formulario usando hook_form_alter()
y agrego la #ajax
propiedad de los campos del formulario, parece que no puedo hacerlo ya que los campos ya se representan antes de pasar el identificador hook_form_alter()
. ¿Alguien puede ayudarme a resolver esto?
Nota: He creado el tipo de contenido usando hook_install()
.
function main_menu_content_type_form_main_menu_node_form_alter(&$form, &$form_state, $form_id) {
dpm($form);
dpm($form_state);
$form['field_mlnk'] = array(
'#ajax' => array(
'callback' => 'main_menu_content_type_form_main_menu_node_form_alter_callback',
'wrapper' => 'link-div',
'method' => 'replace',
'effect' => 'fade',
),
);
}
hook_form_alter()
(como escribió, "Cuando intento acceder a este formulario utilizando el formulario alter [... [...]").
main_menu_content_type_form_main_menu_node_form_alter_callback()
; Si esa función contiene código incorrecto, los usuarios no pueden informar los cambios que debe realizar en su código para que funcione.