当前位置: 首页 > 面试题库 >

jQuery ajax-全局设置。是否有可能知道哪个事件/元素触发了ajax调用?

宦炜
2023-03-14
问题内容

这很容易解决,但是如果将其包装在全局ajax设置中会很好

当我运行ajax调用时,我想知道beforeSend选项中哪个元素/事件触发了ajax调用。

有一种简洁的方法吗?


问题答案:

beforeSend回调有两个参数:XMLHTTPRequest实例和当前AJAX调用使用的设置。

因此,如果您在context选项中传递了触发元素和事件,则beforeSend即使您在全局设置中对其进行定义,它们也将可用:

$.ajaxSetup({
    beforeSend: function(xhr, settings) {
        var element = settings.context.element;
        var event = settings.context.event;

        // Do something with 'element' and 'event'...
    }
});

$("selector").click(function(e) {
    $.ajax("url", {
        // your settings,
        context: {
            element: this,
            event: e
        }
    });
});


 类似资料:
  • 问题内容: 有时我看到人们将原始CSS和javascript都应用于全局CSS样式,有时我看到他们将其应用于。 两者之间有什么区别吗?制作全局CSS样式的标准是什么?在它们之间进行选择时,我应该知道什么吗? 问题答案: 我假设这里的“全局页面样式”是指诸如字体,颜色和背景之类的东西。 就个人而言,我申请的全球页面样式,在大多数情况下,以和简单的元素选择(,,,,等)。这些元素与向用户呈现HTML页

  • 问题内容: 我有一个具有图像背景的侧边栏小部件。 在此上方是搜索输入表单。我不希望输入在图像加载之前显示。 有没有一种方法可以将事件处理程序附加到CSS背景图像(如正常的img元素/对象)? 我知道可以在普通图像上完成此操作,但是我想将其保留为CSS背景,因为该图像是sprite的一部分。我使用的是jQuery,因此使用jQuery或纯DOMJS的解决方案同样不错。 问题答案: 您可以使用DOM/

  • 我有一个视图寻呼机,我想拦截其父容器上的触摸事件。xml如下所示 由于视图寻呼机占据了整个屏幕,如果尝试将onTouchListener附加到id为“layoutContainer”的容器上,则不会触发任何操作。 我希望能够检测屏幕上的垂直滑动手势 我尝试做的另一件事是将触摸监听器连接到视图寻呼机,然后手动将运动事件传递给手势检测器,但这也不起作用。

  • 问题内容: 我正在寻找一个DOM事件,该事件可以通过JavaScript进行监听,以了解通过打开选择元素(但未更改任何选项)然后通过关闭选择元素(在页面上其他位置)来关闭该元素。 这不是选择事件,因为选择保留了焦点。同样,这不是一些其他元素或文档或事件或窗口,文档或身体。 这不是选择事件,因为选择中的任何选项都没有更改。 我不关心旧版Internet Explorer,而只是在符合标准的现代浏览器

  • 我有一个管道Jenkins作业,它按预期工作,配置了“GitHub hook trigger for GITScm polling”选项,以便在任何推送到git存储库时自动构建。 我已经将这个Jenkins URL与多个git回购挂钩,比如< code>repo-A、< code>repo-B、< code>repo-B。< br> Jenkins作业在任何代码推送至这些回购时自动触发。 但是我想

  • 问题内容: 对于jQuery,这是一个非常奇怪的问题。我正在加载一个div 页面加载。每条记录都是表格数据,并带有与之关联的“删除” ajax函数。当页面加载并单击“删除”链接时,ajax调用会触发。但是,一旦触发事件,就会从ajax调用返回数据,并且div中会填充数据(但页面不会刷新或重新加载)。当我再次单击链接时,ajax脚本将不会触发。这是我的代码: 问题答案: 当您删除元素然后通过java