【问题标题】:How to extract the selected value from a datalist with Thymeleaf and Spring如何使用 Thymeleaf 和 Spring 从数据列表中提取选定的值
【发布时间】:2018-08-09 15:32:21
【问题描述】:

这是我的 html 文件。我列出了数据库中的所有文件。

 <div class="container">
        <form action="#" th:action="@{/getFiles}" method="post">

        File Name: 
        <input list="files" name="files" />
        <datalist id="files">
            <option th:each="file: ${files}" th:value=" ${file.fileName}"></option>
        </datalist>
        <button type="submit">OK</button>
    </form>
</div>

当我选择一个文件时,我想知道我选择了什么文件。 这是控制器。来自 post 方法的文件始终为空...

@Autowired
public FileRepository fileRepository;

@GetMapping("/getFiles")
public String fileGet(Model model) {

    List<File> files = new ArrayList<>();

    files = fileRepository.findAll();

    model.addAttribute("files", files);

    model.addAttribute("file", new File());

    return "filesFromDB";
}

@PostMapping("/getFiles")
public String filePost(@ModelAttribute("file") File file, Model model) {

    model.addAttribute("fileName", file.getFileName());

    System.out.println("File: " + file.getFileName());

    return "resultFileDB";
}

【问题讨论】:

    标签: java spring web thymeleaf


    【解决方案1】:

    您必须在数据列表中添加选择标签。

    <div class="container">
        <form action="#" th:action="@{/getFiles}" method="post">
    
        File Name: 
        <input list="files" name="files" />
        <datalist id="files">
         <select>
            <option th:each="file: ${files}" th:value=" ${file.fileName}">
            </option>
         </select>
        </datalist>
        <button type="submit">OK</button>
    </form>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-15
      • 2021-06-05
      • 1970-01-01
      • 2019-04-14
      • 2018-05-30
      • 1970-01-01
      • 2017-08-24
      • 1970-01-01
      相关资源
      最近更新 更多