Thymeleafでリクエストパラメータを使うには${param.hoge}
のように書けばいいんですが、th:if
の中で比較しようとするとうまくいかない。
というわけでパラメータ文字列を比較する場合は以下に注意。(公式より引用)
param : リクエストパラメータを取得するために使用します。 ${param.foo} は foo リクエストパラメータの値を持つ String[] です。ですので、最初の値を取得するために普通は${param.foo[0]} を使用します。
つまり
<label th:if="${param.hoge[0].equals('hogehoge')}"></label>
こういうことですね。
参考:
[Tutorial: Using Thymeleaf (ja) - 17 Appendix A: Expression Basic Objects - request/session 属性などに対するウェブコンテキストネームスペース]
(http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf_ja.html#requestsession-%E5%B1%9E%E6%80%A7%E3%81%AA%E3%81%A9%E3%81%AB%E5%AF%BE%E3%81%99%E3%82%8B%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B3%E3%83%B3%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%8D%E3%83%BC%E3%83%A0%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9)