Javascript 阻止jQuery验证插件在表单可见时提交表单
我想使用插件验证表单。但是,我不希望提交表单,而是希望首先显示结果,以便用户能够额外确定,然后提交数据。“extra sure”页面有一个后退按钮,它只显示原始表单,但当表单显示时,它似乎会立即触发提交回调。请参阅下面的脚本和上的实例。如何防止这种行为Javascript 阻止jQuery验证插件在表单可见时提交表单,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,我想使用插件验证表单。但是,我不希望提交表单,而是希望首先显示结果,以便用户能够额外确定,然后提交数据。“extra sure”页面有一个后退按钮,它只显示原始表单,但当表单显示时,它似乎会立即触发提交回调。请参阅下面的脚本和上的实例。如何防止这种行为 var validator=$("#my-form").validate({ rules: {name:{required:true},address:{required:true},city:{required:true}},
var validator=$("#my-form").validate({
rules: {name:{required:true},address:{required:true},city:{required:true}},
submitHandler: function(form) {
//Populate #my-form
$('#my-form>div').toggle();
}
});
$('#go-back').click(function(){
$('#my-form>div').toggle();
alert('go-back');
});
$('#submit').click(function(){
alert('Submit Form');
});
<form method="post" action="myform.php" id="my-form">
<div class="step1">
<input type="text" name="name" id="name" />
<input type="text" name="address" id="address" />
<input type="text" name="city" id="city" />
<input type="submit" name="submit" value="Submit">
</div>
<div class="step2 hidden">
<dl class="info">
<dt>Name</dt><dd id="name"></dd>
<dt>Address</dt><dd id="address"></dd>
<dt>City</dt><dd id="city"></dd>
</dl>
<button id='go-back'>Go Back</button>
<button id='submit'>Complete</button>
</div>
</form>
var validator=$(“#我的表单”).validate({
规则:{name:{required:true},address:{required:true},city:{required:true},
submitHandler:函数(表单){
//填充#我的表单
$(“#我的表单>div”).toggle();
}
});
$('#返回')。单击(函数(){
$(“#我的表单>div”).toggle();
警报(“返回”);
});
$(“#提交”)。单击(函数(){
警报(“提交表格”);
});
名称
地址
城市
回去
完成
添加按钮类型
返回
@SpYk3HH。是的,确实很奇怪。这个插件很不错,但是这个行为不太好@SpYk3HH请尝试我下面答案上的链接。@SpYk3HH。同意,我想知道。也许插件承认任何不是“按钮”类型的按钮是提交按钮?我是个白痴!我忘了,表单中按钮的默认类型是submit
,这就是你的问题!lol@SpYk3HH. 啊哈!我们都被愚弄了,但至少你明白了。我没有更新你关于你是个白痴的回答,但这样做的原因正好相反。
<button id='go-back' type="button">Go Back</button>