html - 在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>
解决方案
Thymeleaf 等服务器端渲染技术的默认行为是动作总是触发页面刷新。有关更多信息,请参阅使用 Thymeleaf 处理表单。
也就是说,有两种选择:
- 使用 JavaScript(纯 JS 或框架)执行 AJAX 请求并避免页面刷新。
- 使用htmx库中的hx-boost 。通过拦截表单提交并通过 AJAX 调用向服务器发出请求,这将使它看起来没有页面刷新。有关该选项的更多信息,请参阅带有 Thymeleaf 和 HTMX的 TodoMVC。
推荐阅读
- r - 将 .csv 文件中的 2018 年日期读入 R 时的幻像日期格式
- wpf - WPF 窗口样式绑定到非静态类的静态属性
- php - 使用 PhpStorm 进行远程调试 - 不太对劲
- java - System.out.println(dog1.getName()); 返回空
- angular - 模板解析错误:意外的结束标记“div”。当标签已被另一个标签关闭时,可能会发生这种情况
- node.js - 缺少路径参数的自定义错误代码 - 无服务器
- c++ - 编译一些与 CRTP 和名称隐藏相关的代码时遇到问题
- rest-client - Quarkus Rest Client 永远不会超时
- javascript - VueBootstrap 和 New VeeValidate 无法制作自定义模态
- android - 错误:找不到资源样式/Theme.AppCompat.Light.NoActionBar