0

如何向另一个脚本中设置的 jQuery 验证 submitHandler 添加其他功能?我无法修改首先定义 submitHandler 的源 JavaScript。相反,我需要从运行的后续脚本中添加一些额外的功能。这是首先定义 submitHandler 的 .js 文件的一些按比例缩小的伪代码——我无法直接修改:

$("#frmReg").validate({
    invalidHandler: function(e, validator) { //code here ... not relevant },
    submitHandler: function() {
        window.onbeforeunload = null;
        $('#myForm')[0].submit();             
    },
    rules: { firstname: { required: true } },
    messages: { firstname: { required: 'First name is required' } }
});

本质上,我想将第二个函数绑定到现有的 submitHander。

4

1 回答 1

0

我浏览了源代码,我认为这应该可行:

var validatorInstance = $("#frmReg").validate(), //Call this AFTER the initial registration,
    submitHandler = validatorInstance.settings.submitHandler;

validatorInstance.settings.submitHandler = function(){
    //Do your custom stuff here
    console.log(true);
    return submitHandler.apply(this,arguments); //forward to the old handler
};
于 2012-06-07T18:59:44.567 回答