我有html页面“start.html”有通过帖子请求调用serverlet的表单。这个servlet(JSP)就是我所拥有的action.java:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
//please show a message that I am working
// here is some code which takes some time
response.sendRedirect(http://result.html);
}
所以我做了一些处理,然后我显示了一个页面result.html。这一切都很好,问题是在按下start.html中的发送按钮后,我只看到系统正在处理IE中的这个小旋转轮,然后我得到了结果。大多数人可能会错过这个小指标。我想有一个中间页面或带有进度条,旋转轮甚至只有消息“请耐心等待”。尽可能简单。我怎样才能做到这一点?
谢谢!
答案 0 :(得分:6)
只需在表单中加载一个动画gif,最初使用CSS隐藏它,然后在提交表单时使用JavaScript显示它。只要你不在HTTP响应中写入任何字节,当前页面就会长时间停留在浏览器中而不会出现空白。
E.g:
<form onsubmit="document.getElementById('loading').style.display='block'">
...
<img id="loading" src="loading.gif" style="display: none;" />
</form>
(您应该将其放在.js
和.css
文件中)
你可以从Ajaxload.info获得一些不错的图像。