gpt4 book ai didi

drupal-7 - 如何在 Drupal 7 中禁用字段或使其只读

转载 作者:行者123 更新时间:2023-12-02 22:03:41 25 4
gpt4 key购买 nike

我正在尝试禁用几个字段并通过 hook_page_alter() 将它们设置为只读。我能够检查用户是否正在查看页面编辑部分(表单编辑)

$page['content']['system_main']['#node_edit_form'] == TRUE)

然后,当我尝试禁用几个字段时,我发现可以通过以下代码禁用选择列表:

$page['content']['system_main']['field_my_field_name_a_select_list']['und']['#attributes']['disabled'] = TRUE;

但是如果我使用以下代码,它就不起作用:

$page['content']['system_main']['field_my_field_name_a_select_list']['und']['#disabled'] = TRUE;

我还发现我无法使用相同的代码来禁用文本区域字段:

$page['content']['system_main']['field_my_text_area']['und']['#attributes']['disabled'] = TRUE;

上面的代码不会禁用文本区域,但相同的代码可以禁用选择列表!

然后我尝试 hook_form_alter() 做同样的事情,并且我能够禁用字段,当我从 $page 数组检查渲染的数组时,我看到它显示:

$page['content']['system_main']['field_my_field_name_a_select_list']['und']['#disabled'] = TRUE;

但是当我在 hook_page_alter() 中设置相同的代码时,它不起作用。看起来其他东西会覆盖它,我认为 hook_page_alter() 是更改标记的最后一个地方。

知道在 drupal 7 中的 hook_page_alter() 内禁用/只读任何类型字段的最佳方法是什么吗?

谢谢

最佳答案

它适用于文本字段^

$form['field_secured_title']['und']['0']['value']['#attributes']['disabled'] = TRUE;

关于drupal-7 - 如何在 Drupal 7 中禁用字段或使其只读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5399380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com