【发布时间】:2018-07-03 18:18:09
【问题描述】:
在 hook_form_FORM_ID_alter() 函数中,我根据 Drupal 8 中的以下代码检查或未选中另一个复选框字段来显示或隐藏一个字段。
$form['field_my_url']['#states'] = [
'visible' => [
':input[name="field_my_checkbox[value]"]' => ['checked' => TRUE],
],
];
如果用户选中 field_my_checkbox 复选框,在 field_my_url 中输入无效 URL 并决定取消选中 field_my_checkbox 复选框,则 field_my_url 将被隐藏,并且保留无效 URL。它将失败验证,因为输入的 URL 无效。
然后用户将被重定向回来并显示错误消息。但是因为field_my_checkbox 复选框没有被选中,field_my_url 字段将与错误消息一起隐藏,用户看不到。
在这种情况下,如果 field_my_url 字段由于在 Drupal 8 中包含无效 URL 而未能通过验证,我该如何显示它?
【问题讨论】:
标签: php drupal field state show-hide