ajax是什么?ajax交互模型?
AJAX的全称是Asynchronous JavaScript and XML(异步加载 JavaScript 和 XML)。
ajax不是新的编程语⾔,⽽是⼀种使⽤现有标准的新⽅法。ajax是与服务器交换数据并更新部分⽹页的艺术,在不重新加载整个页⾯的情况下。
ajax是⼀种在⽆需重新加载整个⽹页的情况下,能够更新部分⽹页的技术。
ajax是⼀种⽤于创建快速动态⽹页的技术。通过在后台与服务器进⾏少量数据交换。ajax可以使⽹页实现异步更新。这意味着可以在不重新加载整个⽹页的情况下,对⽹页的某部分进⾏更新。⽽传统的⽹页(不使⽤ajax)如果需要更新内容,必须重载整个⽹页⾯。
以下是:对ajax的封装
function myajax(type,url,params,dataType,isAsync,callback) {
var xhr = null;
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
太阳镜的英文} el {
//兼容IE 6
xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
if (type == 'get') {//get method 不⼀定跟随参数
if (params) {
url += '?' + params;
}
xhr.open(type, url, isAsync);
xhr.nd(null);
} el if (type == 'post') {
xhr.tRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.open(type, url, isAsync);
xhr.nd(params);
}
if (isAsync) {
if (adyState == 4 && xhr.status == 200) {
// sponXML){
// var sponXML;
// }el sponText){
/
/ var sponText;
// }
var result = null;
if (dataType == 'json') {
// var sponText;
// result=JSON.par(result);
var result = JSON.sponText);
} el if (dataType == 'xml') {
var result = sponXML;
} el {
var result = sponText;
}
callback && callback(result);
}
}
} el {
if (adyState == 4 && xhr.status == 200) {
// sponXML){
// var sponXML;
// }el sponText){
// var sponText;
// }
var result = null;
if (dataType == 'json') {
// var sponText;
// result=JSON.par(result);
var result = JSON.sponText);
} el if (dataType == 'xml') {
员工访谈
var result = sponXML;
} el {
var result = sponText;
}
callback && callback(result);
}
}
}
// ⼆次封装参数变成对象
function myAjax2(option){
var defaults={ //定义了默认值⽤obj调⽤的值覆盖
type:'get',
url:'#',
dataType:'json',
data:{}, //参数因为参数不⼀定是⼀对所以要初始化时候⽤空对象
async:true,
success:function(result){
console.log(result);
}
}
for(var key in option){ //覆盖上⾯的额
defaults[key]=option[key];
}
var xhr=null;
if(window.XMLHttpRequest){
xhr=new XMLHttpRequest();
黑椒牛排
}el {
xhr=new ActiveXObject("Microsoft.XMLHTTP");
}
var params='';
for(var attr in defaults.data){
params+=attr+'='+defaults.data[attr]+'&';
}
if(params){
params=params.substring(0,params.length-1);
}
pe=="get"){
defaults.url+='?'+params;
}
xhr.pe,defaults.url,defaults.async);
pe=="get"){
身份证换照片
xhr.nd(null)
}el pe=='post'){
xhr.tRequestHeader('Content-type','application/x-www-form-urlencoded'); xhr.nd(params);
}
if(defaults.async){
adyState==4&&xhr.status==200){
if(defaults.dataType=='json'){
var result=JSON.sponText);
}el if(defaults.dataType=='xml'){
曹嶷var sponXML;
}el {
var sponText;
}
defaults.success(result);
}
}
}el {
adyState == 4) {
if(xhr.status == 200) {
var result = null;
if(defaults.dataType == "json") {
result = sponText;
result = JSON.par(result);
} el if(defaults.dataType == "xml") { result = sponXML;
} el {
result = sponText;
}
defaults.success(result);
}
}
}
星空图片高清}
//jquery 中对ajax 封装(最常⽤)
// $.ajax({
// url:url,
// type:type,
// data:{
// uname:urname
// },
// async:true,
世界上最矮的树/
/ dataType:'json',
// success:function (result){
// // ......
// }
高中军训心得// })
// $.get() $.post()
// var params=.....
// $.get(url+'?'+params,function(result){ // // 。。。。。
// })
// $.post(url,{xx:xx},function(){
// })
ajax交互模型:如下