在我的控制器中,我有这个说showMainTab
modelAndView.addObject("showMainTab","true");
在我的模板中,我有
<ul id="myTab-tabs-above" class="nav nav-tabs" role="tablist">
<li th:if="${showMainTab}" class="active">
<a href="#home-tabs" role="tab" data-toggle="tab">Main</a>
</li>
<li><a href="#bankdetails-tabs" role="tab" data-toggle="tab">Bank Detail</a></li>
<li><a href="#industries-tabs" role="tab" data-toggle="tab">Industries</a></li>
</ul>
为什么没有th:if="${showMainTab}"
评估为真?
如果showMainTab为true,我如何标记活动?
答案 0 :(得分:0)
您要添加的对象是String。只需将其更改为布尔值即可。
modelAndView.addObject("showMainTab", true);
模板保持不变。
答案 1 :(得分:0)
您可以使用bools
实用程序来评估布尔值。看看发生了什么事情会非常有帮助。而不是:
th:if="${showMainTab}"
尝试
th:if="${!#bools.isFalse(showMainTab)}"
//寻找不是假的
或
th:if="${#bools.isTrue(showMainTab)}"
//明确寻找真实的
这与Java中的Boolean.TRUE.equals(object)
类似且有用。你也可以这样避免空指针。它更具防御性,所以在您解决问题之后,如果您愿意,仍然可以使用较短的${showMainTab}
。
在你的控制器中,你应该这样做:
modelAndView.addObject("showMainTab", true);