我知道如何在jstl的标记内创建条件属性:
<body <c:if test="${userCreated}"> onload="somejavascriptfunction()"</c:if> >
但是,我该如何使用百里香叶呢?
索引控制器
@RequestMapping("/register") public String register(UserEntity user, @RequestParam String repeatedPassword, RedirectAttributes redirectAttributes) { user.setAdmin(false); userFacade.create(user); redirectAttributes.addFlashAttribute(Constants.USER_CREATED, true); logger.info("Usuario criado"); return "redirect:/login"; }
到目前为止,我发现的唯一解决方案就是这样做
<script type="text/javascript" th:if="${userCreated}"> $(document).ready(function() { somejavascriptfunction() }); </script>
但这似乎并不是最好的方法。那么,如何对百里香的属性做出if陈述呢?
考虑添加使用以下格式的条件类,这确实有点违反直觉:
<div th:classappend="${userSlug != null}?has-slug">
为了附加条件属性,您可以将条件放在属性的值上,如下所示:
<div th:attrappend="data-path=${userSlug != null}?@{/myaccount/__${userSlug}__}">
如果userSlug为null,则前一条语句的计算结果为:
<div>
如果userSlug 不为 null,则该语句的计算结果为:
<div data-path="/myaccount/my-slug">