복붙노트

[SPRING] Thymeleaf에서 드롭 다운 메뉴 및 양식 만들기

SPRING

Thymeleaf에서 드롭 다운 메뉴 및 양식 만들기

클라이언트가 드롭 다운 메뉴에 지정된 필드로 사용자를 검색 할 수있는 드롭 다운 메뉴를 만들고 싶습니다. 예를 들어, 주별 검색, 도시별 검색 등

이것은 내가 지금까지 가지고있는 것이다 :

<p>Search options:</p>
<form action="#" th:action="@{/get/{value}" method="get">
    <select>
        <option th:value="AllUsers">Search all users</option>
        <option th:value="ByUsername">Search by user name</option>
        <option th:value="ByFirstname">Search by first name</option>
        <option th:value="ByLastname">Search by last name</option>
        <option th:value="ByAddress">Search by address</option>
        <option th:value="ByCity">Search by city</option>
        <option th:value="ByState">Search by state</option>
        <option th:value="ByZipCode">Search by zip code</option>
        <option th:value="ByPhoneNumber">Search by phone number</option>
        <option th:value="ByEmail">Search by email</option>
    </select>
    <input type="text" th:field="value" name="searchField"/>
    <input type="submit" value="Search" name="searchButton"/>
</form>

URI를 지정하기 위해 드롭 다운 목록에서 현재 선택된 항목의 액션과 값 태그를 연결하는 방법을 모르겠습니다. 사용자가 국가를 기준으로 검색하고 "Maryland"에 입력하는 경우 해당 URI 태그는 어떻게 지정합니까?

이것은 액션을 실행하는 Spring의 내 메소드입니다.

@RequestMapping(value = "/get/ByState", method = RequestMethod.GET)
public String getByState() {
    // ...
}

@RequestMapping(value = "/get/ByCity", method = RequestMethod.GET)
public String getByCity() {
    // ...
}

해결법

  1. ==============================

    1.이 링크에는 필요한 답변 만 있습니다.

    이 링크에는 필요한 답변 만 있습니다.

    http://fruzenshtein.com/spring-mvc-form-select-tag/

  2. ==============================

    2.수락 된 답변은 Thymeleaf를 사용하지 않기 때문에이 질문은 Google에서 최고입니다. 여기에 내 솔루션을 추가하고 있습니다.

    수락 된 답변은 Thymeleaf를 사용하지 않기 때문에이 질문은 Google에서 최고입니다. 여기에 내 솔루션을 추가하고 있습니다.

    내 상황에는 동상이 열거 형 값 목록입니다. 모델 속성은 보통 Spring에서와 같이 채워진다.

    mav.addObject("statuses", EnumSet.allOf(Status.class));
    

    그룹에는 Status 유형의 필드 (열거 형)가 있습니다.

    <div class="form-group row">
        <select class="form-control" id="status" name="status">
            <option th:each="stat : ${statuses}"
                    th:value="${stat}"
                    th:text="${stat}"
                    th:selected="${stat.equals(group.status)}"/>
        </select>
    </div>
    

    이렇게하면 목록이 자동으로 채워지고 내 Group 인스턴스에서 선택된 값이 선택됩니다.

  3. from https://stackoverflow.com/questions/31495025/creating-drop-down-menu-and-form-in-thymeleaf by cc-by-sa and MIT license