在 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 (将#修改为@)