首页 > 解决方案 > 使用 Form API 将标签元素添加到 managed_file 字段

问题描述

我想在 Drupal 7 Form-API 自定义表单中设置我的 managed_file-Field 的样式,因此,插入一个标签元素来替换“浏览文件”。

所以我想要这个:

<input type="file" name="files[bild_0]">
<input type="submit" id="edit-bild-0-upload-button" value="Upload">
<label for="files[bild_0]">Choose Picture</label>

但是,Form API 使得在输入旁边直接插入标签变得非常困难。“#prefix”和“#suffix”不起作用。“#field_prefix”和“#field_suffix”将html插入到包装器中......有什么想法吗?

非常感谢您!

标签: drupaldrupal-7form-api

解决方案


所以,我终于想出了一个替代解决方案。我用

'#field_suffix'

表单 API 字段上的属性以添加标签元素。除此之外,我必须通过覆盖该字段的初始 id

'#id' => '上传选择器-' 。$index_of_picture 字段

由于实际输入字段的 id 现在与包含该字段的 div 不同,因此我可以使用该字段的标签来触发文件对话框。我根据需要设置标签元素的样式并隐藏了初始输入。


推荐阅读