替换/隐藏输入按钮,如果表单被验证(使用jquery.validate.js)



格式如下:

<form class="vform" action='http://example.com/someaction.php' method='post' id='myid' >
    <input type="email" name="email" id="email" class="required email " placeholder="Enter Your Email" >
    <input id="#before" type='submit' value="Submit">
</form>

我使用jquery.validate.js插件来验证表单,这是正常工作的。(链接)


用户在成功验证表单后被重定向之前,有这个'暂停'(当它重定向时)…在此期间,用户反复点击提交按钮。

如果表单被验证,我如何隐藏/替换(可能是加载gif或其他东西)提交按钮。

意思是禁用或用其他东西替换输入按钮如果表单被验证

验证码:

<script type="text/javascript" src="https://cdn.jsdelivr.net/jquery.validation/1.14.0/jquery.validate.js"></script>
<script>    
    $(document).ready(function() {
        $(".vform").validate();
    });
</script>

我尝试在validate函数之后添加一些替换/禁用代码,如下所示:

$(this).children('input[type=submit]').attr('disabled', 'disabled');

$('#before').replaceWith($('#after'));   

但不知道该怎么做

有人能提供一些见解吗?

EDIT: 如果表单验证为false,输入按钮不应该被替换/禁用

可以使用jQuery的submitHandler进行验证。

<script>    
$(document).ready(function() {
$(".vform").validate({
     submitHandler: function(form) { // <- pass 'form' argument in
            $("#before").attr("disabled", true);
            form.submit(); // <- use 'form' argument here.
        }
});
});
</script>

最新更新