我正在连接到一个API,它根据用户的邮政编码返回一些数据。该数据需要包含在对API的第二次调用的有效负载中,以及其他一个表单值中。
我想多步构建webform,第一个页面收集邮政编码,在单击下一个页面之后,执行一个API调用来发送邮政编码并保存来自该调用的响应,以便在第二个页面上提交通过另一个API调用发送响应数据加上所有表单值。
这个在webform钩子中获取数据草稿_表格_表格_ID_alter()似乎是答案,但不是完全正确。
发布于 2018-01-12 22:56:10
您应该编写一个自定义WebformHandler,它将返回API数据添加到$form_state中,然后根据需要修改表单元素。有一些关于编写webform处理程序的博客文章。
下面是如何从$form_state获取当前页面。
/** @var \Drupal\webform\WebformSubmissionForm $form_object */
$form_object = $form_state->getFormObject();
$current_page = $form_state->get('current_page');
https://drupal.stackexchange.com/questions/253668
复制相似问题