如何在 drupal 网络表单的 select 选项中填充动态内容

how to populate dynamic content in select options in drupal web forms

我正在尝试在 select 选项中填充动态内容,例如根据 国家/地区 它应该填充 国家/地区 相关 个州 。我希望只使用网络表单来完成这件事。

我正在使用 Drupal-7.60 版本。

我们能做到吗?

您可以使用以下列表中的任何一个模块。这对你的情况会有帮助

1) https://www.drupal.org/project/webform_term_opts
2) https://www.drupal.org/project/webform_conditional

我最好的选择是使用 hook_webform_select_options_info() 来定义一个可以用作 select 列表选项的回调,如下所示:

function mymodule_webform_select_options_info() {
  $items = array();

  $items['my_dynamic_custom_options'] = array(
    'title' => t('My dynamic custom options'),
    'options callback' => '_get_dynamic_custom_options',
  );

  return $items;
}

然后你需要为上面指定的回调提供函数:

function _get_dynamic_custom_options() {
  // Get your options based on the logic you wants.
  // For example you can get options based on a taxonomy vocabulary terms.
  $options = array();
  $options['key'] = 'value';
  return $options;
}

用法:

清除您的缓存,并在您的网络表单中,在: ("Form Components" > "Select options"。> "Add" > "Load a pre-built options list"), 您会找到上面定义的选项 'My dynamic custom options'。

希望对您有所帮助。