动态th:多个属性的attr定义

时间:2015-08-05 19:39:24

标签: thymeleaf

我正在尝试对表单的表单字段进行泛化。我想要有不同的parsley.js验证要求。 html中简单字段的示例可能是:<input type=text required data-parsley-range=[1,100] />有2个非标准属性。

我尝试了以下操作,但得到的错误是:attr已定义&gt; 1次:

<input class="form-control" fieldType="text" th:attr="required=${field.isRequired ? 'required' : null}" th:attr="data-parsley-range=${field.validStringLengthMin ? [${field.validStringLengthMin},${field.validStringLengthMax}] : null}"/>

我如何获得&gt;在th:attr中定义了1个属性,只是插值?

奖金,如何有条件地放置attrs,例如,如果我可以避免,我根本不想打印required='required'。范围也一样。

谢谢!

1 个答案:

答案 0 :(得分:19)

您可以使用逗号分隔多个属性。

th:attr="required=${field.isRequired ? 'required' : null}, data-parsley-range=${field.validStringLengthMin ? [${field.validStringLengthMin},${field.validStringLengthMax}] : null}"

如果您仍想单独保留以便更好地阅读,可以使用      日:attrappend

th:attr="required=${field.isRequired ? 'required' : null}" th:attrappend="data-parsley-range=${field.validStringLengthMin ? [${field.validStringLengthMin},${field.validStringLengthMax}] : null}"