1

我使用 Mask for Typo3 创建了一个内容元素,编辑器可以在其中选择提供的付款选项。然而,在流体模板中,返回的是一个带有位掩码的整数,而不是每个单独的选项。

使用掩码内容元素选择付款选项

掩码建议的默认渲染是:

{f:if(condition: data.tx_mask_ue_payment_accepted, then: 'On', else: 'Off')}

data.tx_mask_ue_payment_accepted 的结果可以从 0(未选择)到 511(选择所有 9 个选项)不等。有没有人设法用for循环或任何适当的方法顺利实现复选框,如果是这样,如何?

提前谢谢了!

4

2 回答 2

0

也许这会让某人朝着正确的方向前进,即使它没有准备好复制和粘贴的解决方案。体液:

<input type="checkbox" name="tx_myext[checkbox][0]" value="1" id="checkbox0" class="checkbox" {f:if(condition:'{return.checkbox.0} == "1"',then:'checked="checked"',else:'')}>
<input type="checkbox" name="tx_myext[checkbox][1]" value="1" id="checkbox1" class="checkbox" {f:if(condition:'{return.checkbox.1} == "1"',then:'checked="checked"',else:'')}>

如您所见,我们得到一个数组“返回”,其中包含来自传输表单的值。如果值存在,我们将复选框设置为“选中”。

于 2018-11-30T12:58:05.160 回答
0

我在我当前的 FE 插件的几个区域中使用了位掩码,并且没有找到比在显示表单之前在控制器操作中映射字段值对更好的方法。

为此,我实现了两种方法,将当前位掩码值转换为单独的布尔值(反之亦然)。我将这些值绑定到一个数组,并将其显示在一个流动的 for 循环中作为复选框(不使用 extbase 直接属性映射)。

于 2018-03-05T06:56:04.537 回答