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

时间:2015-07-21 07:43:38

标签: javascript jquery forms validation submit

我有这种正常形式:

public class McqItem {
  
  	private String option1;
	private String option2;
    private byte[] img1;
	private byte[] img2;

//with their getter and setters
}

我正在使用jquery.validate.js插件来验证表单,该表单工作正常。 (Link

需要什么:
之前,用户在成功验证表单后被重定向,就会出现“暂停”状态。 (在重定向时)...在此期间,用户反复点击提交按钮。

如果表单经过验证,如何隐藏/替换(可能使用加载gif或其他内容)提交按钮。

含义,禁用或替换输入按钮 IF 表单已经过验证。

验证码

<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>

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

<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>

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

但对于如何实际操作感到困惑。

任何人都可以提供一些见解吗?

编辑:如果表单验证为false,则不应替换/禁用输入按钮

1 个答案:

答案 0 :(得分:0)

你可以submitHandler jQuery验证。

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