JSTLの使い方を教えています。変数が存在する場合、DIVや他のHTMLタグにJSTLが表示されているかどうか
変数がコントローラから設定されていないときに私のビューにDIVを表示したり表示したりするのに問題があります。
テンプレート管理のためにTilesを使用したSpring Boot Mavenプロジェクトに取り組んでいます。
私は私のコントローラでうまく変数を設定し、私は私のJSPビューでちょうど同様にそれを見て、次のようにこの場合には、私のDIVにそれを表示することができます:私はから期待
<c:if test="${!empty loggeduser}">
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert"
aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong>${loggeduser.email}</strong> Welcome to the new project!
</div>
</c:if>
loggeduser
変数が設定しても、またはいないされていない場合は、他の手でJSTL Working fine
:loggeduser
変数が設定されている場合は、単に次の画像のように、「電子メールへようこそ」アラートに全体DIV
タグを印刷することを、このコード存在すると、DIV
はまったく表示されません。しかし、loggeduser
が存在しないときに私が得たのは、ユーザーの電子メールなしで警告に表示されるDIV
です。次の画像のように:JSTL Not working as expected
私のコントローラに変数を設定すると、完全なDIVが表示されます。変数が設定されていないか、存在しない場合は、DIVを表示/印刷しないでください。
P.S:これは私のコントローラの方法です。
@PostMapping("/login/entry")
public String checkUserInfo(@Valid LoginUser loginUser, BindingResult bind, Model model) {
logger.info("Entry");
if (bind.hasErrors()) {
logger.info("Bind has errors");
model.addAttribute("hideTemplates", true);
return "loginpage";
}
model.addAttribute("loggeduser", loginUser);
return "aboutpage";
}
test = "$ {not empty loggeduser.email}"としてください。 –
同じ結果です。 'test =" $ {!empty loggeduser.email} 'と' test {"empty loggeduser.email}'は元の 'test =" $ emptyuser "}と同じイメージを表示します。私はそれが多くの仕事を取るべきではないと感じ、それは私を夢中にさせている。 – f6rnando