用途:该技能面向 Drupal 表单开发,讲解 AJAX 回调模式,用于在不刷新整页的情况下根据用户输入动态更新表单内容。
主要能力:在表单元素上通过 #ajax 属性绑定回调,支持 callback(方法或 [ClassName, 'method'])、wrapper(要替换的 DOM ID)、event(change、click、blur 等)、method(replaceWith、append、prepend 等)、effect(none、slide、fade)、progress(throbber 或 bar)以及 url、options 等配置。回调可返回表单片段,也可返回 AjaxResponse 并添加 ReplaceCommand、HtmlCommand、InvokeCommand、MessageCommand 等命令来更新页面。
使用方式:在 buildForm 中为元素设置 #ajax,并准备带 id 的容器作为 wrapper;回调方法接收 array &$form 与 FormStateInterface $form_state,返回对应表单片段或 AjaxResponse。需要重新构建表单时,在 submitForm 中调用 $form_state->setRebuild(TRUE)。
适用场景:联动下拉框、按类型动态显示字段、局部提示与消息更新等交互式表单。
限制:资料未提供版本要求、依赖、安装命令、收费或效果说明,暂未提供。