Thymeleafでセレクトボックス(select)のcheckedを設定

Thymeleafでセレクトボックス(select)のcheckedを設定

Thymeleafでセレクトボックス(select)の初期選択値を設定する例を以下に示します。
コントローラの処理も含めています。

コントローラ (Controller.java)

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class SampleController {

  @GetMapping("/form")
  public String showForm(Model model) {
    model.addAttribute("selectedValue", "2"); // 初期選択値を設定
    return "form";
  }

  @PostMapping("/submitForm")
  public String submitForm(@RequestParam("dropdown") String selectedValue, Model model) {
    model.addAttribute("selectedValue", selectedValue);
    return "result";
  }
}

ビュー (form.html)

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<body>
  <form action="#" th:action="@{/submitForm}" method="post">
    <label for="dropdown">選択肢:</label>
    <select id="dropdown" name="dropdown">
      <option value="1" th:selected="${selectedValue == '1'}">選択肢 1</option>
      <option value="2" th:selected="${selectedValue == '2'}">選択肢 2</option>
      <option value="3" th:selected="${selectedValue == '3'}">選択肢 3</option>
    </select>
    <button type="submit">送信</button>
  </form>
</body>
</html>

ビュー (result.html)

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<body>
  <p>選択された値は: <span th:text="${selectedValue}"></span></p>
  <a th:href="@{/form}">戻る</a>
</body>
</html>

この例では、/formエンドポイントでフォームを表示し、セレクトボックスの初期選択値を設定します。
submitFormメソッドでフォーム送信後の選択された値を処理し、結果を表示します。