我正在使用 Drupal 7 作为表单。在表单中,我有一个 managed_file 字段。当我将主题属性添加到 managed_file 字段时,删除按钮会在删除图像时重新加载页面。上传工作正常。在添加主题属性之前,删除按钮也可以正常工作。这是我的 managed_file 字段。
$form['profile_image'] = array(
'#title' => t('Profile Image'),
'#type' => 'managed_file',
'#default_value' => profile_image['user']->field_profile_image['und']['0']['fid'],
'#upload_location' => 'public://',
'#theme' => 'module_upload_thumb_style',
);
这是我用来设置上传图片样式的主题函数,而不是只显示图片的名称。
function theme_module_upload_thumb_style($variables) {
$element = $variables['element'];
if (isset($element['#file']->uri)) {
$output = '<div id="edit-logo-ajax-wrapper"><div class="form-item form-type-managed-file form-item-logo"><span class="file">';
$output .= '<img height="50px" src="' . image_style_url('thumbnail', $element['#file']->uri) . '" />';
$output .= '</span><input style="margin-left:20px;" type="submit" id="edit-' . $element['#name'] . '-remove-button" name="' . $element['#name'] . '_remove_button" value="Remove" class="btn btn-primary ajax-processed">';
$output .= '<input type="hidden" name="' . $element['#name'] . '[fid]" value="' . $element['#file']->fid . '"></div></div>';
return $output;
}
}
在表单域中注释主题属性时,移除按钮移除图像而不刷新页面。但是在添加主题属性时,功能保持不变,但页面重新加载