全部, 我正在尝试使用jQuery Form Validator(http://docs.jquery.com/Plugins/Validation)。但是,我希望能够单击链接进行验证,然后在一切正常的情况下提交表单。有谁知道如何做到这一点?任何提示或建议将不胜感激。
谢谢!
答案 0 :(得分:5)
完全可能。插件文档甚至give an example,我已经修改了一点而不是提醒:
$("#myform").validate();
$("a.check").click(function() {
if ($("#myform").valid()) {
$("#myform").submit();
}
return false;
});
答案 1 :(得分:0)
此代码的工作方式与接受的答案相同,但删除了所有冗余。 (无需使用.valid()
来检查表单,因为Validate插件将继续正确阻止无效表单。)
使用event.preventDefault()
来阻止锚元素的默认行为。
$("#myform").validate(); // initialize plugin
$("a#submit").on('click', function(e) { // capture the anchor link click
e.preventDefault(); // block default anchor link behaviors
$("#myform").submit(); // simulates a submit button
});
在锚标记中使用href="#"
。
<a id="submit" href="#">Submit</a>
$(document).ready(function() {
$("#myform").validate({ // initialize plugin
submitHandler: function(form) { // simulate form submission for demo
alert('form submission');
return false;
}
});
$("a#submit").on('click', function(e) { // capture the anchor link click
e.preventDefault(); // block default anchor link behaviors
$("#myform").submit(); // simulates a submit button
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.0/jquery.validate.js"></script>
<form id="myform">
<input type="text" required="required" name="test1" />
<br />
<input type="text" required="required" name="test2" />
<br />
<a id="submit" href="#">Submit</a>
</form>