0

我有一个页面,我在提交 10 秒后禁用按钮,如果验证成功则提交表单。但是,即使验证返回 false,表单也会被提交。

我尝试使用

<input type="submit">

而不是图像仍然是同样的问题。

下面是代码:

<html>
    <head>
        <script>
            function enableMe(myBtn) {
                myBtn.disabled = false;
            }
            function doValidation() {
                document.getElementById('hidden1').value = 'true';
                return false;
            }
        </script>

    </head>
    <body>
        <form id="loginForm" method="post" action="https://www.mySite.com/authService">
            <label for="userid">Username</label><br/>
            <input type="text" value="" id="userid" name="userid"/>
            <br/>

            <label for="password">Password</label>
            <br/>
            <input type="password" value="" id="password" name="password"/>
            <br/>
            <br/>

            <input type="image" id="submitBtn" src="btn_login.gif"
                   onsubmit="this.disabled=true; setTimeout(enableMe,10000,this); return doValidation();">
            <input type="hidden" id="hidden1" name="hidden1" value="false"/>
        </form>
    </body>
</html>
4

1 回答 1

2

验证应附加到表单,而不是输入元素...

<form id="whatever" ... onsubmit="return doValidation();">
于 2012-08-03T17:25:37.720 回答