繁体   English   中英

百里香春季组合框获得所选值

[英]spring thymeleaf combo box get selected value

我有这个枚举类,它具有一组值。 我在组合框中显示值。 如何获得所选值?

@Entity
@Table(name = "accountant")
public class Accountant {

    @Column(name="country")
    private String country;

    public enum country{
        MALAYSA,GREECE
    }
}

在控制器中,我已经通过执行modelAndView.addObject("currentAccountant", loggedInUser);

我通过以下方式将它们全部列出:

<form th:action="@{/updateAccountant}"  th:object="${currentAccountant}" class="form-inline"  method="post" id="companyProfileForm" name="companyProfileForm">

<select class="form-control selectpicker" data-live-search="true" style="width:300px;margin-left: 50px;"  >
    <option value="" selected disabled hidden>Please select a Country</option>
        <option th:each="country : ${T(Accountant.Country).values()}"
            th:value="${country}" 
            th:text="${country.getValue()}">
        </option>
    </select>
</form>

如何从表单的组合框中获取所选值? 然后在加载表单时重新设置该值。

我尝试了这个,但是组合框中没有列出任何内容。:

<select th:field="*{country}" class="form-control selectpicker" data-live-search="true">

当我删除th:field="*{country}" ,会显示国家。 <select class="form-control selectpicker" data-live-search="true">

所以这花了我一些时间来解决,破解解决方案。

  1. 对于组合框,要获取所选值,则th:field不应为field name-column name variable country 它应该是枚举列表名称Country注意命名差异大写字母C

  2. 要获取组合框的所有值,您应该执行${T(com.workspez.model.Accountant.States).getSortedValue()}您需要指定完整的包名称

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM