当前位置: 首页 > 知识库问答 >
问题:

使用Thymeleaf和Spring Boot在表中实现从表返回数据的按钮

葛桐
2023-03-14

TL;DR使用Spring Boot和Thymeleaf时,当用户单击特定行第5列的按钮时,如何返回表单中第1列的值?

嗨!长时间的倾听者,第一次打电话的人。在这个问题上,我非常感谢你的帮助。

我正在用Spring Boot和Thymeleaf编写一个服务器应用程序。服务器与许多设备交互。我正在创建一个网页,它将在一个表(表单)中显示设备及其IP地址的列表。该表的每一行都有关于设备的信息和从列表中删除设备的“remove”按钮。当单击按钮时,表单应该将设备的IP地址返回给底层控制器,这样控制器就可以从设备的(内部)列表中删除设备。

  <form action="#" th:action="@{/webservice/adddevice}" th:object="${addForm}" method="post">
<table>
    <tr><th>Device IP</th>
        <th>Status</th>
        <th>Model Name</th>
        <th>Serial No.</th>
        <th>Remove?</th>
    </tr>
    <tr th:each="d : ${devices}">
        <td th:text="${d.address}">N/A</td>
        <td th:text="${d.status}">N/A</td>
        <td th:text="${d.modelName}">N/A</td>
        <td th:text="${d.serialno}">N/A</td>
        <td><input type="hidden" th:value="${d.address}" name="deviceIP"/><button type="submit" class="removebutton" name="action" value="remove">Remove</button></td>
        <td th:if="${#fields.hasErrors('deviceIP')}" th:errors="*{deviceIP}">IP Error</td>
    </tr> 
</table>

我最近的(也是最接近标记的)尝试使用每行的隐藏输入来返回值...但它返回所有行的值。

“Devices”(类DeviceStatus)对象是标准数据对象的列表,其中包含一系列字符串成员和get/set方法。它保存附加设备的信息。

“AddForm”(类AddForm)对象是一个带有字符串(“deviceIP”)和该字符串的get/set方法的单个对象。

    @RequestMapping(value="/webservice/adddevice", method=RequestMethod.GET)
public String showForm(Model model, AddForm addForm) {
    model.addAttribute("devices", getDevicesStatus());
    addForm.loadPrefs(deviceController);
return "adddevice"; // the webpage is adddevice.html
}
    @RequestMapping(value="/webservice/adddevice", method=RequestMethod.POST, params="action=remove")
public String removeDevice(@Valid AddForm addForm, BindingResult bindingResult) {
//addForm.removeDevice(deviceController);
return "redirect:/webservice/results";
}

共有1个答案

钮巴英
2023-03-14

我将向您展示我们是如何在应用程序中解决这个问题的。我们为表行中的每个操作生成一个表单,如下所示:

<table>
<thead>
    ...
</thead>
<tbody>
    <tr th:each="entry : ${allEntries}">
        ...

        <td>
            <form action="#" th:action="@{/dashboard/myEntries/} + ${{entry.id}}" method="get">
                <button th:id="'table_entry_childs_button_' + ${entry.id}" type="submit">
                    <i>details</i>
                </button>
            </form>
        </td>
        ...
</tbody>

那个解决方案对我们很管用。我很受鼓舞,我能帮助你。

 类似资料:
  • 我想创建网站。我已经配置了登录“/login”和注册“/registration”页面。这个网站的主要任务是显示每个学生的时间表。现在我需要在页面“/Schedule”上显示科目列表,使用HTML-table,根据学生注册时选择的字段组和课程。我有14个不同的表格和科目列表(一个表格-一组学生)。 是否需要为每个表创建@Entity类和存储库? 如何使用注册数据显示学生信息? 页面“/计划”的控制

  • 我尝试将< code>bytea数据从一个表移动到另一个表,在一个查询中更新引用。 因此,我想从用于插入的查询中返回不用于插入的数据。 但我得到了一个查询错误: 我想做这样的事情: 但我无法获取用于插入的所有数据,我无法从子选择返回id。 我受到这个关于如何使用通用表表达式做到这一点的答案的启发,但我找不到一种方法来使它工作。

  • 本文向大家介绍使用Django的JsonResponse返回数据的实现,包括了使用Django的JsonResponse返回数据的实现的使用技巧和注意事项,需要的朋友参考一下 urls.py 在views.py中创建show_view函数 到此这篇关于使用Django的JsonResponse返回数据的实现的文章就介绍到这了,更多相关Django JsonResponse内容请搜索呐喊教程以前的文

  • 函数getfile: 但我需要一个数组而不是这个promise的东西。怎么解决?

  • 我还在学习Thymeleaf、Bootstrap和JQuery,所以请原谅我的无知。我有一个spring-boot应用程序,使用Thymeleaf和Bootstrap作为UI。我有一个用户列表,我显示在一个表中,并希望编辑他们。我目前的想法是,用户可以选择行上的图标,然后将该记录填充到模态对话框表单中,在那里可以通过调用来更新该记录。不确定这是不是最好的,但这就是我现在所处的位置。

  • 我有以下一段代码, 我如何达到预期的结果?预期结果来自Springfox。