我对TYPO3 / Powermail有问题。我试图添加自定义复选框图像,并遇到IE问题。我找到了另一个基于TYPO3的网站,该网站上的自定义复选框也可以在IE上正常工作。
奇怪的是,我的html表单结构(由TYPO3 / Powermail生成)看起来有所不同。
这是我的HTML复选框:
如您所见,我有一个插入了隐藏类型的字段,不知道为什么。而且我的标签没有“用于”属性。
此表单字段(也包括TYPO3 / Powermail)看起来不错:
这里我们没有奇怪的隐藏输入字段,并且标签中有一个“ for”属性。
有人可以帮忙吗?
答案 0 :(得分:1)
两个安装的模板不同。检查文件夹EXT:powermail / Resources / Private中EXT:powermail随附的原始模板和部分。如果使用自己的模板,请添加所有必需的字段和选项。
例如,将for
属性添加到<label>
的部分用于单选按钮的区域<label for="powermail_field_{field.marker}_{index.cycle}">
中。
在EXT:powermail(7.3.1)的较新版本中,Resources / Private / Partials / Form / Field / Radio.html文件看起来像:
{namespace vh=In2code\Powermail\ViewHelpers}
<div class="powermail_fieldwrap powermail_fieldwrap_type_radio powermail_fieldwrap_{field.marker} {field.css} {settings.styles.framework.fieldAndLabelWrappingClasses}">
<f:render partial="Form/FieldLabel" arguments="{_all}" />
<div class="{settings.styles.framework.fieldWrappingClasses}">
<f:for each="{field.modifiedSettings}" as="setting" iteration="index">
<div class="{settings.styles.framework.radioClasses} {vh:Validation.ErrorClass(field:field, class:'powermail_field_error')}">
<label>
<f:form.radio
property="{field.marker}"
value="{setting.value}"
checked="{vh:Misc.PrefillMultiField(field:field, mail:mail, cycle:index.cycle)}"
id="powermail_field_{field.marker}_{index.cycle}"
additionalAttributes="{vh:Validation.ValidationDataAttribute(field:field, iteration:index)}"
class="powermail_radio" />
<vh:string.escapeLabels>{setting.label}</vh:string.escapeLabels>
</label>
</div>
</f:for>
<f:if condition="{settings.validation.client}">
<div class="powermail_field_error_container powermail_field_error_container_{field.marker}"></div>
</f:if>
</div>
资源/私人/部分/表格/FieldLabel.html:
{namespace vh=In2code\Powermail\ViewHelpers}
<f:comment>
Partial file for the HTML-structure of nearly all field labels
</f:comment>
<f:if condition="{field.css} != 'nolabel'">
<label for="powermail_field_{field.marker}" class="{settings.styles.framework.labelClasses}" title="{field.description}">
<vh:string.escapeLabels>{field.title}</vh:string.escapeLabels><f:if condition="{field.mandatory}"><span class="mandatory">*</span></f:if>
</label>
</f:if>