使用jQuery验证插件正确提交Handler方法

时间:2010-08-19 21:44:17

标签: javascript jquery ajax jquery-validate

首先从jQuery验证插件中获取一些文档:

“使用submitHandler处理某些内容然后使用默认提交。请注意,”form“指的是DOM元素,这样就不会再次触发验证。”

submitHandler: function(form) {
    $.ajax({
        type: 'POST',
        url: form.action,
        data: 'current_password=' + form.current_password + '&new_password=' + form.new_password,
        success: function(){
            alert("succes");
        }
    });
}

所以,我的巧妙代码自然不起作用。我正试图从表单对象访问'action'属性和两个输入字段,没有运气。我该怎么做?

1 个答案:

答案 0 :(得分:8)

请改为尝试:

submitHandler: function(form) {
    $.ajax({
        type: 'POST',
        url: $(form).attr('action'),
        data: { current_password : form.current_password.value,
                new_password: form.new_password.value }
        success: function(){
            alert("succes");
        }
    });
}

目前,不是提交元素的值,而是在字面上调用toString,所以只需添加.value即可获取值。此外,我们将data作为对象传递给此处,以便对其进行编码,否则,如果密码中包含&,则帖子将不正确。