我有一个index.html,其中有一个表单。当我按“提交”时,该表单会向我的 servlet 发出 POST 请求。这个servlet 做了一些繁重的事情,然后转发到jsp。我想要的是当我按下提交时显示加载程序。 我知道如何通过 javascript 做到这一点(preventDefault 等)。我不想要这样。这个可以通过servlet来完成吗?我试图输出一个仅包含加载器的“页面”,然后执行繁重的操作,最后转发到jsp。那行不通。由于某种原因,它甚至没有离开index.html,只是停留在那里直到servlet完成,最后我被转发到jsp。
感谢您的帮助
最佳答案
这只能使用 AJAX 来完成。
因此,单击提交按钮后,显示正在加载图像,并对 servlet 进行 ajax 调用。因此,当 Servlet 进行处理时,将显示加载图像。从 ajax 调用返回后,您可以使用 javascript 执行您需要的任何操作(将用户转发到另一个页面/显示错误......等)。
我强烈推荐你看看JQuery Ajax (这是我用过的最简单有效的脚本)
$.ajax({
type: 'POST',
url: '/myServlet',
data: {
name: $('#name').val()
},
beforeSend:function(){
// this is where we append a loading image
},
success:function(data){
// successful request; do something with the data
},
error:function(){
// failed request; give feedback to user
}
});
关于jsp - 在等待 servlet 转发到下一页时显示加载程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16300885/