警报框无法阻止Firefox6中的请求

时间:2011-11-04 00:42:37

标签: firefox alert

为防止提交按钮的双击,我编写了以下函数,该函数在表单的onsubmit事件中调用。

<script language="JavaScript">
var submitFlag = false;
function checkForm(){
    if ( submitFlag == false ) {
        submitFlag = true;
        return true;
    } else {
        alert('double click');
        return false;
    }
}
</script>
<form name="f1" method="post" action="B.jsp" onSubmit="return checkForm()">

在Internet Explorer中,当我单击提交按钮两次时,会发生警报方法。如果我没有单击警告框中的okay按钮,则不会重定向jsp。

然而在Firefox6中,警报框非常快,我没有时间点击“确定”按钮。 jsp被重定向得非常快,第二个请求已被发送出去。

如何阻止请求在Firefox中执行?

1 个答案:

答案 0 :(得分:0)

你可以禁用按钮。

onsubmit="document.getElementById( 'submitbuttonid').disabled = true;"

由于FFx4(Gecko 2)他们重做了盒子系统,因此它不再是一个实际的警报/提示/确认框,这是为了用户的安全而完成的,所以没有滥用这些盒子。