论坛首页 Java企业应用论坛

重复提交表单信息的提示

浏览 5992 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2005-09-15  
我采用同步令牌的方式解决重复提交表单的问题,当用户第二次提交表单的时候,给客户端发送提示信息:“你已经提交了表单,同一表单不能提交两次。”我想问的是,如何让用户看到第一次提交的成功信息或失败信息,有没有什么好办法。
   发表时间:2005-09-20  
既然是用TOKEN, 就在SAVE方法中写上:

if (!isTokenValid(request)){
errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("error.transaction.token"));
}
resetToken(request);

上面的error.transaction.token写在你的.PROPERTIES文件里;或者你直接把它替换成"表单已经提交,不能重复提交".
在.JSP页面上嵌入<ERRORS/>标签就OK了
0 请登录后投票
   发表时间:2005-09-20  
wzzwj 写道
我采用同步令牌的方式解决重复提交表单的问题,当用户第二次提交表单的时候,给客户端发送提示信息:“你已经提交了表单,同一表单不能提交两次。”我想问的是,如何让用户看到第一次提交的成功信息或失败信息,有没有什么好办法。


但是,如果用户快速提交了两次, 后台正在处理,第一次提交是否成功,你也未必能立即检测的到啊
0 请登录后投票
   发表时间:2005-09-21  
我想最好的方法是在用户提交第一次的时候马上把按钮灰掉,那么用户只有在刷新页面,或者后退的时候才会产生重复提交的问题。lz的问题可以回避掉。
0 请登录后投票
   发表时间:2005-09-30  
SagittariuS 写道
我想最好的方法是在用户提交第一次的时候马上把按钮灰掉,那么用户只有在刷新页面,或者后退的时候才会产生重复提交的问题。lz的问题可以回避掉。


最后采取的办法就是这样。当初是因为做实验时,没有在客户端进行控制,于是在客户端点击两次提交按钮时,服务器端给出了重复提交的信息,然而第一次提交实际上已经成功,于是就在想如何让客户端知道第一个提交已经成功。实际上就HTTP协议这种响应请求的方式是做不到的,简单的方法就是客户端服务器端一起控制。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics