日期:2014-05-17  浏览次数:21040 次

有什么办法防止多次提交
有时候服务器反应比较慢
这样客户可能会按多次提交
本来想disabled掉submit
但这样会传递不了submit的值
而我是根据submit的值来判断操作的
添加一个hidden值也行但这样会很大工程
最好是修改js
我提交时会用js判断是否能提交
因为是公用文件所以改一个就可以了

------解决方案--------------------
在提交页:
<%
dim RefreshIntervalTime
RefreshIntervalTime = 3 '3秒内不允许再提交
If Not IsEmpty(Session( "visit ")) and isnumeric(Session( "visit ")) and int(RefreshIntervalTime) > 0 Then
if (timer()-int(Session( "visit ")))*1000 < RefreshIntervalTime * 1000 then
Response.write ( " <meta http-equiv= " "refresh " " content= " " "& RefreshIntervalTime & " " " /> ")
Response.write ( "靠!你想刷死我啊!等着! ")
Session( "visit ") = timer()
Response.end
end if
End If
Session( "visit ") = timer()
%>
------解决方案--------------------
<input type= "button " onclick= "submitform " value=提交 />

var temp1=0;
function submitfrom(){
if(temp1==0){
document.form.submit();
temp1=1;
}
else
alert( "正在XXXXX中,请等待 ")
}
------解决方案--------------------
<%
n = 5 '防止5秒刷新
If Not IsEmpty(Session( "pagetime ")) Then
If DateDiff( "s ",Session( "pagetime "),Now()) > n Then
Session( "pagetime ") = Now()
Else
Response.Write( "请不要在 "&n& "秒内连续刷新页面 <br /> ")
Response.Write( "还剩下 "& n - DateDiff( "s ",Session( "pagetime "),Now()) & "秒 ")
Response.End
End If
Else
Session( "pagetime ") = Now()
End If
%>