首页 > 解决方案 > 在spring boot中单击按钮时停止页面刷新

问题描述

我有一个表单,并且在该复选框和按钮中存在,单击按钮时,数据正在提交并插入到数据库中,但是我的页面正在刷新,我希望我的数据应该提交并插入到数据库中,页面也不应该在百里香弹簧靴中刷新。复选框中的值循环显示。我目前的代码是:

<form class="myform myform-newaccount" action="#" id="myForm"
                th:action="@{/authorList?buttonValue=pluginlist}"
                th:object="${userModifyDto}" method="post">
<input type="checkbox" name="applicationId" th:field="*{applicationIds}" id="myCheck" 
th:value="${option.applicationId}" /> 
<input type="submit" value="send" id="myid"/>

</form>

标签: htmlspringbuttoninputthymeleaf

解决方案


Thymeleaf 等服务器端渲染技术的默认行为是动作总是触发页面刷新。有关更多信息,请参阅使用 Thymeleaf 处理表单。

也就是说,有两种选择:

  1. 使用 JavaScript(纯 JS 或框架)执行 AJAX 请求并避免页面刷新。
  2. 使用htmx库中的hx-boost 。通过拦截表单提交并通过 AJAX 调用向服务器发出请求,这将使它看起来没有页面刷新。有关该选项的更多信息,请参阅带有 Thymeleaf 和 HTMX的 TodoMVC。

推荐阅读