我的问题是,我有一个表单,我想使用jquery验证字段,如果数据是正确的我让提交继续,如果没有我通过返回false禁用默认行为(在教程中看到,here ).
所以我使用了jquery语法,当文档准备就绪时,我注册了按钮的click事件,问题是代码永远不会被执行.我使用了萤火虫,但没有任何线索.没有任何反应,所以这是我的代码:
所以我使用了jquery语法,当文档准备就绪时,我注册了按钮的click事件,问题是代码永远不会被执行.我使用了萤火虫,但没有任何线索.没有任何反应,所以这是我的代码:
$('#submitBtn').click(function() { var password1 = $('#form_password').val(); var password2 = $('#form_password2').val(); if( password1 != password2) { alert("the two passwords are not equal."); } return false; //to disable the default behavior of the submit btn });
解决方法
检查表单提交的正确方法是检查表单的提交事件,而不是按钮的单击事件.改变周围和你所拥有的应该工作,虽然现在它总是做返回假;所以永远不会发送表格.这应该这样做:
$('#myform').submit(function() { var motPasse1 = $('#form_motPasse').val(); var motPasse2 = $('#form_motPasse2').val(); if(motPasse1 != motPasse2){ alert("Les deux mot de passe ne sont pas identiques"); return false; // cancel form submission if passwords don't match } return true; // return true if no errors });
最后,我希望你没有为生产目的保持警惕. :)有很多,更好的方式来显示用户通知而不是警报.查看this question以获取一些建议,尽管只是出现错误< div>并且淡入它比丑陋的默认浏览器警报框更好.