防止多次点击事件触发JQuery

这是场景,我的内容是基于类异步加载的.所以如果我有一个链接到类ajaxLink它触发如下:
$('a.ajaxLink').click(function (e) {
        e.preventDefault();
        var container = $(this).parents('div.fullBottomContent');
        var href = $(this).attr('href');
        container.fadeOut('fast',function () {
            $.ajax({
                url: href,dataType: "html",type: "GET",success: function (data) {
                    container.html(data);
                    BindEventHandlers();
                    container.fadeIn();
                    $.validator.unobtrusive.parse('form');
                },error: function () {
                    alert('An error has occurred');
                }
            });
        });

    });

全可爱现在在一个实例中,我想向用户显示一个警告,以确认他们想要加载页面,并松开所有的更改,以便我写过:

$('a.addANewHotel').click(function (e) {
        if (!confirm('Adding a new hotel will loose any unsaved changes,continue?')) {
            e.stopPropagation();
        }
    });

现在我已经尝试返回false,e.preventDefault()和e.stopPropagation();但无论第一种方法总是被触发?如何防止额外的点击事件触发?这是事件的顺序吗?

没有看到这是相关的,但我的HTML是:

<a style="" href="/CMS/CreateANewHotel?regionID=3&amp;destinationID=1&amp;countryName=Australia" class="button wideBorderlessButton ajaxLink addANewHotel">Add a new hotel</a>

最终解决方案如下:

$('a.addANewHotel').click(function (e) {
        if (!confirm('Adding a new hotel will loose any unsaved changes,continue?')) {
            e.stopImmediatePropagation();
            e.preventDefault();
        }
    });

解决方法

你尝试过:event.stopImmediatePropagation?

我相信这是你正在寻找的:

http://api.jquery.com/event.stopImmediatePropagation/

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...