0

多步骤 Drupal webform中,是否可以显示在上一步页面中输入的值?

例如,第一步页面捕获一个username字段为“John”,是否可以在下一步页面中显示问候语,显示Hello John, ...

ps 匿名用户。

4

2 回答 2

2

我知道这很旧,但我需要同样的东西,所以我希望这有助于其他人的搜索。

我的自定义 Webform 组件需要上一个 Webform 步骤中的值。该_webform_redner_[component](...)钩子不提供formor form_state,而且前面步骤的数据(比刚刚提交的上一步更多)不在$_POST.

为了解决这个问题,我使用变量form_build_id中的 which从 Drupal 的表单缓存系统中手动检索表单。$_POST

  /* ... */
  $form_state = array();
  // Get the form_state to pass on to our build function.
  // Webforms doesn't provide it at this point so we'll need to manually get it using the form's build_id.
  $form = form_get_cache($_POST['form_build_id'], $form_state); 
  /* ... */

您现在拥有完整的form并且form_state还包括先前步骤的值。

于 2014-08-28T12:10:54.253 回答
0

在这里查看多步骤表单示例:http: //drupal.org/node/717750

一般的想法是,在提交函数中,您将所有发布的值保存到$form_state['storage'],您可以稍后在接下来的步骤中访问。

编辑:看看我刚刚创建的 Prev 和 Next 按钮的示例:http: //zgadzaj.com/basic-drupal-multipart-form-example-with-previous-and-next-buttons

于 2011-06-20T11:41:48.627 回答