ajax Asynchronous Javascript And XML
異步的javascript 和 xml
就是異步的獲取數(shù)據(jù)或者提交數(shù)據(jù)。
同步,在程序中,一件事情做完再做下一件
異步,在程序中,做一件事情的同時(shí)做另外的事情
jquery的ajax:
1、請求一個(gè)簡單的文件
$.ajax('1.txt');
2、讀取/利用 返回的內(nèi)容
$.ajax({
url:'ajaxFile/1.txt',
success:function(result){ //請求成功之后的回調(diào)函數(shù)
//result —— 就是本次請求返回的結(jié)果
}
});
3、失敗的回調(diào)
$.ajax({
url:
success:function(){},
error:function(){
alert('出錯(cuò)了');
}
});
4、看的并不是文件的擴(kuò)展名,而是和文件的內(nèi)容有關(guān)(碰到一個(gè)特殊:.js文件)
通常情況下,約定,數(shù)據(jù)文件的擴(kuò)展名: 使用 .json .data
5、不管看到的結(jié)果是什么,都是字符串類型
序列化:
把對(duì)象變成字符串,ES5提供的方法: JSON.stringify(字符串);
JSON.stringify('{"a":1,"b":2}');
反序列化:
把字符串變成對(duì)象
JSON.parse({"a":1,"b":2});
6、數(shù)據(jù)類型
$.ajax({
dataType:
});
7、
dataType:'json',
——并不是咱們傳統(tǒng)意義上理解的純JSON格式,可以兼容JSON+數(shù)組的寫法
8、緩存
解決辦法:
1)
在URL地址上加一個(gè)隨機(jī)數(shù)
url + 'r='+Math.random();
隨機(jī)數(shù): 隨機(jī)因子
2)利用jquery的一個(gè)選項(xiàng)參數(shù)
cache:false
$.ajax({
url: //請求的地址
dataType:'json' // 默認(rèn) 字符串
cache: false //默認(rèn)true
success:function(){} //成功后的回調(diào)函數(shù)
error:function(){} //失敗后的回調(diào)函數(shù)
});