您的位置:首页 > Web前端 > JQuery

jquery.validationEngine ajax验证 不通过也提交表单

2011-12-03 03:16 776 查看
今天用到了jquery.validationEngine ajax验证,碰到了一个让人很郁闷的问题

ajax验证不通过时也提交表单,在网上找了半天也没找到答案,让人很


没办法,看源码了


调试了半天,终于找到点眉目了,但是不知道自己这样修改对别的地方有没有影响,反正适合我的需求


修改源码jquery.validationEngine.js的地方大概在258到387行

不多说了看代码

*/
_onSubmitEvent: function() {
var form = $(this);
var options = form.data('jqv');

// validate each field (- skip field ajax validation, no necessary since we will perform an ajax form validation)
// 验证每个字段( - 跳过领域Ajax验证,没有必要,因为我们将执行一个Ajax表单验证) 上面这段话翻译
// 为神马要忽略???求解??? 有点瞌睡 想睡觉了 修改下暂时让它不忽略
var r=methods._validateFields(form, true);

/*
if (r && options.ajaxFormValidation) {
methods._validateFormWithAjax(form, options);
return false;
}
*/

//这是要修改的地方
if (r && !methods._checkAjaxStatus(options)) {
return false;
}

if(options.onValidationComplete) {
options.onValidationComplete(form, r);
return false;
}

return r;
},

不好意思啊,上次那个地方有点问题,我改过来了!!!

还有需要注意的是 ajax验证必须返回的是json数据,如果不是的话自己要修改源码里的json请求验证那一块

还有json数据是个数组,验证返回的数据。数据第一个元素是错误字段,第二个是否成功(true或false),第三个为错误消息,可以没有

大概在396到464行,建议直接返回json数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: