使用Form API将label-element添加到managed_file字段

时间:2019-02-13 08:53:37

标签: drupal drupal-7 form-api

我想在Drupal 7 Form-API自定义表单中设置我的Managed_file-Field的样式,因此,插入一个label元素,它将替换“ Browse for file”。

所以我要这样:

<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插入包装中...有什么想法吗?

非常感谢您!

1 个答案:

答案 0 :(得分:0)

所以,我终于找到了替代解决方案。我用

'#field_suffix'

在Form API字段上添加

属性,以添加标签元素。除此之外,我还必须通过

覆盖该字段的初始ID。

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

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