jQuery.ajaxPrefilter( [dataTypes] , handler()

概述

Handle custom Ajax options or modify existing options before each request is sent and before they are processed by $.ajax().

参数见 '$.ajax' 说明。

参数

[dataTypes]V1.5

An optional string containing one or more space-separated dataTypes

handler(options, originalOptions, jqXHR)V1.5

A handler to set default values for future Ajax requests.

示例

描述:

A typical prefilter registration using $.ajaxPrefilter() looks like this:

$.ajaxPrefilter( function( options, originalOptions, jqXHR ) { 
   // Modify options, control originalOptions, store jqXHR, etc 
 });
where:
  • options are the request options
  • ooriginalOptions are the options as provided to the ajax method, unmodified and, thus, without defaults from ajaxSettings
  • ojqXHR is the jqXHR object of the request

描述:

Prefilters are a perfect fit when custom options need to be handled. Given the following code, for example, a call to $.ajax() would automatically abort a request to the same URL if the custom abortOnRetry option is set to true:

var currentRequests = {};    
$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
    if ( options.abortOnRetry ) {
      if ( currentRequests[ options.url ] ) {
        currentRequests[ options.url ].abort();
      }
      currentRequests[ options.url ] = jqXHR;
    }
});

描述:

Prefilters can also be used to modify existing options. For example, the following proxies cross-domain requests through http://mydomain.net/proxy/:

$.ajaxPrefilter( function( options ) {
    if ( options.crossDomain ) {
      options.url = "http://mydomain.net/proxy/" + encodeURIComponent( options.url );
      options.crossDomain = false;
    }
  });

描述:

If the optional dataTypes argument is supplied, the prefilter will be only be applied to requests with the indicated dataTypes. For example, the following only applies the given prefilter to JSON and script requests:

$.ajaxPrefilter( "json script", function( options, originalOptions, jqXHR ) {
    // Modify options, control originalOptions, store jqXHR, etc
  });

描述:

The $.ajaxPrefilter() method can also redirect a request to another dataType by returning that dataType. For example, the following sets a request as "script" if the URL has some specific properties defined in a custom isActuallyScript() function:

$.ajaxPrefilter(function( options ) {
    if ( isActuallyScript( options.url ) ) {
      return "script";
    }
  });

This would ensure not only that the request is considered "script" but also that all the prefilters specifically attached to the script dataType would be applied to it.

以上就是jQuery.ajaxPrefilter( [dataTypes] , handler()的全部内容,希望这篇jQuery.ajaxPrefilter( [dataTypes] , handler()能帮到你,更多内容请访问前端开发博客。

前面的一篇文章我们已经实现了postMessage+window.name实现了iframe高度自适应,iframe跨域通信,这篇文章基于jquery,完善了之前文章作者提到的一些不足,一起来看看。 - 2018-09-12

本文分享了使用jquery移除前面通过onclick绑定的元素的事件,然后重新绑定别的函数来执行onclick事件。 - 2018-09-14

很久没用fullpage插件来实现全屏效果的滚动了,我自己整理了一个比较简单的PC版全屏滚动代码,几乎fullpage有的东西都有,代码一看就懂。 - 2018-05-09

前端开发制作中有需要需要等到页面中的图片加载完毕后才执行某些事件,而使用jquery的load事件只是dom执行完毕,图片未必加载完成,如果要判断图片加载完毕,需要在图片标签上判断。 - 2018-02-07

jQuery有没有获取图片实际尺寸的方法?就是图片文件的实际尺寸,而不是添加了css样式之后的尺寸。本文给出一个兼容的方式。 - 2018-01-15

很早就使用jQuery的$.extend({},obj1,obj2)来合并两个对象,原来jQuery的这个方法就是深度拷贝($.extend(true,{},obj1))和浅度拷贝的意思,这篇文章分享了 Underscore、lodash 和 jQuery 这些主流的第三方库对于深度拷贝和浅度拷贝的实现与区分。 - 2017-12-02

本文要推荐的是一个jQuery二维码插件,它可以根据你设定的地址来生成一个二维码,二维码可以有div格式的,也有canvas格式的。canvas的支持自定义logo和文字在上面。 - 2017-06-03

- 2017-07-21

本文整理了一些主要的jQuery API,其中包括jQuery 核心函数和方法、jQuery属性参考手册、jQuery CSS操作、jQuery选择器、jQuery文档操作、jQuery筛选操作、jQuery事件方法、jQuery效果、jQuery Ajax操作、jQuery工具函数、jQuery事件对象、jQuery延迟对象、jQuery回调函数,欢迎收藏使用,本手册会持续更新。 - 2017-04-27

niceScroll 是一个类似于 iOS /移动端 样式的 jQuery 滚动条插件,不需要增加额外的CSS,几乎全浏览器兼容,实现只需要一段代码,侵入性非常小,样式可完全自定义,支持触摸事件,可在触摸屏上使用。 - 2018-03-16

全部展开 | 全部折叠 | jQuery API手册