Maison  >  Article  >  interface Web  >  Explication détaillée de divers paramètres d'ajax dans jquery

Explication détaillée de divers paramètres d'ajax dans jquery

伊谢尔伦
伊谢尔伦original
2017-06-19 10:12:301614parcourir

Les paramètres ajax() sont un objet Object, dont chaque attribut est utilisé pour spécifier les paramètres supplémentaires requis pour envoyer la requête.

jQuery.ajax() peut reconnaître les propriétés suivantes de l'objet (elles sont toutes facultatives) :

1.url :

nécessite des paramètres de type String, (par défaut à l'adresse de la page actuelle) L'adresse à laquelle envoyer la demande.

2.type :

nécessite des paramètres de type String et la méthode de requête (post ou get) est par défaut get. Notez que d'autres méthodes de requête http, telles que put et delete, peuvent également être utilisées, mais ne sont prises en charge que par certains navigateurs.

3.timeout :

nécessite un paramètre de type Number et définit le délai d'expiration de la requête (millisecondes). Ce paramètre remplacera le paramètre global de la méthode $.ajaxSetup().

4.async :

nécessite des paramètres de type booléen. Le paramètre par défaut est vrai. Toutes les requêtes sont des requêtes asynchrones. Si vous devez envoyer des requêtes synchrones, définissez cette option sur false. Notez qu'une requête synchrone verrouillera le navigateur et que l'utilisateur devra attendre que la requête soit terminée avant de pouvoir effectuer d'autres opérations.

5.cache :

nécessite des paramètres de type booléen, la valeur par défaut est true (lorsque dataType est script, la valeur par défaut est false), le définir sur false ne se chargera pas depuis le cache du navigateur Demander des informations.

6.data :

nécessite des paramètres de type Objet ou Chaîne, données envoyées au serveur. S'il ne s'agit pas d'une chaîne, elle sera automatiquement convertie au format chaîne. La demande d'obtention sera ajoutée à l'URL. Pour empêcher cette conversion automatique, cochez l'option processData. L'objet doit être au format clé/valeur, par exemple {foo1:"bar1",foo2:"bar2"} est converti en &foo1=bar1&foo2=bar2. S'il s'agit d'un tableau, JQuery attribuera automatiquement le même nom à différentes valeurs. Par exemple, {foo:["bar1","bar2"]} est converti en &foo=bar1&foo=bar2.

7.dataType :

nécessite des paramètres de type String, et le type de données renvoyé par le serveur est attendu. S'il n'est pas spécifié, JQuery renverra automatiquement ResponseXML ou ResponseText en fonction des informations MIME du package http et les transmettra comme paramètre de fonction de rappel . Les types disponibles sont les suivants :
xml : Renvoie un document XML pouvant être traité avec JQuery.
html : renvoie les informations HTML en texte brut ; la balise de script incluse sera exécutée une fois insérée dans le DOM.
script : renvoie le code JavaScript en texte brut. Les résultats ne sont pas automatiquement mis en cache. Sauf si les paramètres du cache sont définis. Notez que lors de requêtes à distance (pas sous le même domaine), toutes les requêtes de publication seront converties en requêtes get.
json : renvoie les données JSON.
jsonp : format JSONP. Lors de l'appel d'une fonction à l'aide du formulaire SONP, tel que myurl?callback=?, JQuery remplacera automatiquement le dernier "?" par le nom de fonction correct pour exécuter la fonction de rappel .
text : renvoie une chaîne de texte brut.

8.beforeSend :

nécessite des paramètres de type Function. Vous pouvez modifier la fonction de l'objet XMLHttpRequest avant d'envoyer la requête, par exemple en ajoutant un en-tête HTTP personnalisé. Si false est renvoyé dans beforeSend, cette requête ajax peut être annulée. L'objet XMLHttpRequest est le seul paramètre.​ ​ ​  

 function(XMLHttpRequest){
  this;   //调用本次ajax请求时传递的options参数
 }

9.complete :

nécessite un paramètre de type Function, une fonction de rappel qui est appelée une fois la requête terminée (appelée lorsque la requête réussit ou échoue). Paramètres : objet XMLHttpRequest et une chaîne décrivant le type de requête réussie.

 function(XMLHttpRequest, textStatus){
    this;    //调用本次ajax请求时传递的options参数
 }
10.Succès : Les paramètres requis pour le type de fonction, la fonction de rappel appelée après la réussite de la requête, il y a deux paramètres.

(1) Données renvoyées par le serveur et traitées selon le paramètre dataType.

(2) Une chaîne décrivant le statut.

11.error :
function(data, textStatus){
   //data可能是xmlDoc、jsonObj、html、text等等
   this;  //调用本次ajax请求时传递的options参数
}

Les paramètres requis du type Function, la fonction qui est appelée lorsque la requête échoue. Cette fonction a 3 paramètres, à savoir l'objet XMLHttpRequest, le

message d'erreur

et l'objet d'erreur capturé (facultatif). La fonction d'événement ajax est la suivante :

12.contentType :
function(XMLHttpRequest, textStatus, errorThrown){
    //通常情况下textStatus和errorThrown只有其中一个包含信息
    this;   //调用本次ajax请求时传递的options参数
}

nécessite des paramètres de type String Lors de l'envoi d'informations au serveur, le type d'encodage du contenu est par défaut "application/x. -www-form-urlencoded". Cette valeur par défaut convient à la plupart des applications.

13.dataFilter :

nécessite des paramètres de type Function, une fonction qui prétraite les données originales renvoyées par Ajax. Fournissez deux paramètres : data et type. data est les données originales renvoyées par Ajax et type est le paramètre dataType fourni lors de l'appel de jQuery.ajax. La valeur renvoyée par la fonction sera ensuite traitée par jQuery.​ ​ ​  

14.dataFilter :
function(data, type){
    //返回处理后的数据
    return data;
}

nécessite des paramètres de type Function, une fonction qui prétraite les données originales renvoyées par Ajax. Fournissez deux paramètres : data et type. data est les données originales renvoyées par Ajax et type est le paramètre dataType fourni lors de l'appel de jQuery.ajax. La valeur renvoyée par la fonction sera ensuite traitée par jQuery.                                                                                        

15.global :
function(data, type){
   //返回处理后的数据
   return data;
}

要求为Boolean类型的参数,默认为true。表示是否触发全局ajax事件。设置为false将不会触发全局ajax事件,ajaxStart或ajaxStop可用于控制各种ajax事件。

16.ifModified:

要求为Boolean类型的参数,默认为false。仅在服务器数据改变时获取新数据。服务器数据改变判断的依据是Last-Modified头信息。默认值是false,即忽略头信息。

17.jsonp:

要求为String类型的参数,在一个jsonp请求中重写回调函数的名字。该值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,例如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。

18.username:

要求为String类型的参数,用于响应HTTP访问认证请求的用户名。

19.password:

要求为String类型的参数,用于响应HTTP访问认证请求的密码。

20.processData:

要求为Boolean类型的参数,默认为true。默认情况下,发送的数据将被转换为对象(从技术角度来讲并非字符串)以配合默认内容类型"application/x-www-form-urlencoded"。如果要发送DOM树信息或者其他不希望转换的信息,请设置为false。

21.scriptCharset:

要求为String类型的参数,只有当请求时dataType为"jsonp"或者"script",并且type是GET时才会用于强制修改字符集(charset)。通常在本地和远程的内容编码不同时使用。

22.jsonpCallback

为jsonp请求指定一个回调函数名。jquery会自动生成随机函数名,用这个值可以修改此名。

23. mimetype

jQuery1.5.1添加。可以用来覆盖XHR中的mimetype。

24. statusCode

jQuery1.5添加。用来定义http的返回码对应的处理函数。下面的例子定义了返回404后的处理方法。

$.ajax({   
    statusCode: {   
      404: function() {   
           alert("page not found");   
           }   
      }   
});

25.success(data,textStatus,jqXHR)

请求成功后的回调函数。参数由服务器返回,并会根据datatype参数进行参数处理。

26.timeout

设置请求超时时间,毫秒为单位。此设置会覆盖全局设置,即所有ajax请求共享同一个超时时间。

27.traditional

设置为true,用传统的方式来序列化数据。

28.type

请求方式,get或post或put或delete。默认为get。put和delte不是得到所有的浏览器支持。

29.url

发送请求的地址。为空表示当前页。

30.username

用于响应http访问认证请求的用户名。同password配对。

31.xhr

默认在ie下是ActiveXObject而其他浏览器是XMLHttpRequest。用于重写或提供一个增强的XMLHttpRequest对象。

32.xhrFields

jQuery1.5.1添加。它可以添加到原生xhr对象上的key/value对。举个例子,你可以通过它来设置跨域的withCredentials为true。

$.ajax({   
    url: a_cross_domain_url,   
    xhrFields: {   
    withCredentials: true   
    }   
});

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn