Home >Web Front-end >Front-end Q&A >What are the attributes of ajax

What are the attributes of ajax

青灯夜游
青灯夜游Original
2021-12-29 19:06:396530browse

The attributes of ajax are: url, type, timeout, async, beforeSend, cache, data, complete, success, error, contentType, dataFilter, global, jsonp, etc.

What are the attributes of ajax

The operating environment of this tutorial: windows7 system, javascript version 1.8.5, Dell G3 computer.

Detailed introduction to the properties of ajax

##1. url:

Requires a String type parameter, (default is the current page address) to send the requested address.

Generally, there should be no Chinese characters in the URL, whether it is a link or a value! ! !

2. type:

requires parameters of String type, and the request method (post or get) defaults to get. Note that other http request methods such as put and delete can also be used, but are only supported by some browsers.

3. timeout:

is required to be a Number type parameter and set the request timeout (milliseconds). This setting will override the global setting of the $.ajaxSetup() method.

4. async:

requires Boolean type parameters. The default setting is true. All requests are asynchronous requests. If you need to send synchronous requests, set this option to false. Note that a synchronous request will lock the browser, and the user must wait for the request to complete before other operations can be performed.

5. cache:

requires Boolean type parameters, the default is true (when dataType is script, the default is false), setting it to false will not Load request information from browser cache.

6. data:

Requires parameters of type Object or String, data sent to the server. If it is not a string, it will be automatically converted to string format. The get request will be appended to the url. To prevent this automatic conversion, check the processData option. The object must be in key/value format, for example {foo1:"bar1",foo2:"bar2"} is converted to &foo1=bar1&foo2=bar2. If it is an array, JQuery will automatically assign the same name to different values. For example, {foo:["bar1","bar2"]} is converted to &foo=bar1&foo=bar2.

If you want to transfer Chinese values ​​to the background, you need to fill in the attribute contentType: "application/x-www-form-urlencoded;charset=UTF-8"

type must be post (pass In English, it will not go wrong if the type is written as get, so please pay attention to this)

7. dataType:

requires parameters of String type, and the expected server The data type returned. If not specified, JQuery will automatically return responseXML or responseText based on the http package mime information and pass it as a callback function parameter. The available types are as follows:

  • #xml: Returns an XML document that can be processed with JQuery.

  • html: Returns plain text HTML information; the included script tag will be executed when inserted into the DOM.

  • script: Returns plain text JavaScript code. Results are not cached automatically. Unless cache parameters are set. Note that when making remote requests (not under the same domain), all post requests will be converted into get requests.

  • json: Return JSON data.

  • jsonp: JSONP format. When calling a function using the SONP form, such as myurl?callback=?, JQuery will automatically replace the last "?" with the correct function name to execute the callback function.

  • text: Returns a plain text string.

8. beforeSend:

requires parameters of Function type. You can modify the function of the XMLHttpRequest object before sending the request, such as adding a custom HTTP head. If false is returned in beforeSend, this ajax request can be canceled. The XMLHttpRequest object is the only parameter.


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

9. Complete:

is required to be a parameter of Function type, a callback function called after the request is completed (called when the request succeeds or fails). Parameters: XMLHttpRequest object and a string describing the successful request type.


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

10. Success:

requires parameters of Function type. The callback function called after the request is successful has two parameters.

(1) Data returned by the server and processed according to the dataType parameter.

(2) A string describing the status.

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

11. error:

is required to be a parameter of Function type, which is the function to be called when the request fails. This function has three parameters, namely XMLHttpRequest object, error message, and captured error object (optional). The ajax event function is as follows:


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

12.contentType:

要求为String类型的参数,当发送信息至服务器时,内容编码类型默认为"application/x-www-form-urlencoded"。该默认值适合大多数应用场合。

当发送的数据格式为json时,设置的编码类型为:"application/json; charset=utf-8"

13、dataFilter:

要求为Function类型的参数,给Ajax返回的原始数据进行预处理的函数。提供data和type两个参数。data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。函数返回的值将由jQuery进一步处理。

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

14、dataFilter:

要求为Function类型的参数,给Ajax返回的原始数据进行预处理的函数。提供data和type两个参数。data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。函数返回的值将由jQuery进一步处理。

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

15、global:

要求为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)。通常在本地和远程的内容编码不同时使用。(想看更多就到PHP中文网AJAX开发手册栏目中学习)

Jquery对象的each()方法如下:22.顺便说一下$.each()函数:
$.each()函数不同于JQuery对象的each()方法,它是一个全局函数,不操作JQuery对象,而是以一个数组或者对象作为第1个参数,以一个回调函数作为第2个参数。回调函数拥有两个参数:第1个为对象的成员或数组的索引,第2个为对应变量或内容,$.each()示例如下:

$("button").click(function(){
  $("li").each(function(){
    alert($(this).text())
  });
});

index - 选择器的 index 位置备注:function(index,element)

  • element - 当前的元素(也可使用 "this" 选择器)

【相关教程推荐:AJAX视频教程

The above is the detailed content of What are the attributes of ajax. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn