java - Thymeleaf + Spring 下拉菜单在选定的下拉框中保留数据

标签 java spring thymeleaf el

我有一个大型表单,我在数据库中保存了参数,因此下次用户进入时,之前的选择会在各个下拉列表中预先选择。

类似于这篇文章:Thymeleaf + Spring form - How load persisted select box values from controller to view?

主要区别是我有大量参数,并且我试图使其更通用。

基本上,我有一个 Java 中的 ParameterSet 对象,其中包含 getParameterByName 函数和 contains 方法,用于检查在之前的运行中是否选择了下拉列表的动态可能值。

我的问题可能与 Thymeleaf 语法​​有关。我一直在玩 th:selected='${campaignRunCommand.parameterSet.parameters.getParameterByName("states").contains("${st}")}' 我什至不确定是否可以像这样在 Thymeleaf 内发送没有参数的静态值。

<select class="js-example-basic-multiple" style="width: 75%"
id="cstates" name="cstates" multiple="multiple">
<option th:each="st : ${states}" th:value="${st}" th:selected='${campaignRunCommand.parameterSet.parameters.getParameterByName("states").contains("${st}")}'
    th:text="${st}"></option>

最佳答案

最后,我的问题确实是语法问题,而且很简单。

这 contains("${st}")}' 不是正确的语法。您不需要再次告诉 Thymeleaf 这是该表达式内的变量。 .contais(st) 工作正常。

关于java - Thymeleaf + Spring 下拉菜单在选定的下拉框中保留数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57796753/

相关文章:

java - 在 java 中填充值后,Excel 下载无法正常工作

java - 与 JPA 的 session

java - 我在模拟测试期间收到此错误 : Failed to load ApplicationContext

java - Thymeleaf - 使用条件设置属性值

java - Thymeleaf 获取当前语言环境

java - 查询没有实体类的数据库表

java - SonarLint 针对 java :S1206 issue but hashCode and equals are implemented 发出警报

java - 在 Spring 中从属性文件获取值的最佳方法是什么?

java - 找不到类型 : java. lang.Long 的 validator 。带帖子ID

html - thymeleaf 正在根据 rest URI 加载静态资源