【问题标题】:stop form to refresh the page停止表单以刷新页面
【发布时间】:2021-04-01 01:40:35
【问题描述】:

所以我得到了一个隐藏的表格。基本上,当我按下按钮btnInsert 时,我想将隐藏的表单提交给java servlet,并将表单内的数据提交到数据库而不刷新页面。所以在btnInsert 函数中我写了类似myForm.submit() 的东西,但我不知道如何防止它刷新,我尝试使用e.preventDefault() 但它对我不起作用。下面是我的示例代码

function sentRequest(a,b,c,d){
console.log(a,b,c,d)
var form = document.getElementById("forminput")
var btnform = document.getElementById("btnform")
form.submit()

感谢您的建议!

【问题讨论】:

  • 表单提交一旦收到来自服务器的响应总是会刷新,进行 ajax/fetch 调用而不是执行 form.submit()
  • 如果您不想刷新页面,您应该使用 Ajax 向服务器发送信息。
  • 谢谢你们!在我使用 ajax 后它对我有用

标签: javascript java forms servlets


【解决方案1】:

表单提交总是刷新页面,这就是它们的工作原理。

如果您不希望这种情况发生,您应该进行 AJAX 调用(异步 javascript 和 XML)。

您可以使用 fetch() 函数 (https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch) 发出 Get 请求

或通过使用 XMLHttpRequest 对象 (https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest)。

如果你可以使用一个名为 AxiosJS 的库来为你处理所有这些东西 (https://github.com/axios/axios)

【讨论】:

    猜你喜欢
    • 2015-08-30
    • 2014-04-20
    • 2013-10-27
    • 1970-01-01
    相关资源
    最近更新 更多