我正在构建表单模块。早期的领域之一是一组单选按钮。默认情况下,第一个按钮处于选中状态。接下来,我将有一系列选择框。一个需要可见,其他则不可见。然后,当用户选择其他单选按钮时,我希望显示或隐藏不同的选择框。如何默认情况下如何隐藏字段和标签,然后根据选择了哪个单选按钮(或该问题的另一个选择框选项)显示出来?
您可以使用#states
属性来实现。 #states
属性可以应用于所有Form API元素。
这里是documentation link的例子。
#states的简单用法示例:仅当名称为'type'的另一个字段具有值'sell'时,才显示名称为'item'的选择字段
$form['item'] = array(
'#title' => t('Task Item'),
'#type' => 'select',
'#states' => array(
// Only show this field when the value of type is sell.
'visible' => array(
':input[name="type"]' => array('value' => 'sell'),
),
),
);
您还可以使用“条件字段”模块。这里是链接:https://drupal.org/project/conditional_fields在创建内容类型时,它提供了“管理依赖项”选项卡,您可以在其中选择当字段具有特定值时显示哪些字段。