代码之家  ›  专栏  ›  技术社区  ›  Jan

如何使用Typo3流体渲染遮罩复选框?

  •  1
  • Jan  · 技术社区  · 7 年前

    我创建了一个内容元素,其中包含Typo3的掩码,编辑器可以在其中选择提供的付款选项。但是,在流体模板中,将返回一个带位掩码的整数,而不是每个选项。

    Payment option selection with Mask content element

    mask建议的默认渲染为:

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

    数据的结果。接受的tx\u mask\u ue\u payment\u可以从0(未选择任何选项)到511(已选择所有9个选项)。是否有人成功地使用for循环或任何适当的方法顺利地实现了复选框?如果是,如何实现?

    非常感谢!

    2 回复  |  直到 7 年前
        1
  •  0
  •   taalas    7 年前

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

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

        2
  •  0
  •   mycaravam    6 年前

    也许这会让某人朝着正确的方向前进,即使它没有复制&粘贴就绪溶液。 流体:

    <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:'')}>

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

    推荐文章