微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Jquery 中触发自定义事件但找不到任何事件处理程序

如何解决在 Jquery 中触发自定义事件但找不到任何事件处理程序

我在理解 jQuery 自定义事件和命名空间时遇到问题,在下面的代码中,我可以看到自定义事件 login:submit 正在被触发,但在任何地方我都看不到用于处理的处理程序函数这个事件,谁能帮我理解下面的代码块在做什么

 login: function () {
    $('form.login').submit(function (e) {
        var form = $(this);
        e.preventDefault();
        var url = form.attr('action');
        form.spinner().start();
        $('form.login').trigger('login:submit',e);
        $.ajax({
            url: url,type: 'post',dataType: 'json',data: form.serialize(),success: function (data) {
                form.spinner().stop();
                if (!data.success) {
                    formValidation(form,data);
                    $('form.login').trigger('login:error',data);
                } else {
                    $('form.login').trigger('login:success',data);
                    location.href = data.redirectUrl;
                }
            },error: function (data) {
                if (data.responseJSON.redirectUrl) {
                    window.location.href = data.responseJSON.redirectUrl;
                } else {
                    $('form.login').trigger('login:error',data);
                    form.spinner().stop();
                }
            }
        });
        return false;
    });
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。