Ajax基础
什么是Ajax(异步JavaScript和XML)
无刷新数据读取
用于用户注册,在线聊天室
什么是服务器
网页浏览分析过程
使用Ajax
function ajax(url(告诉服务器读的文件),fnSucc(一个函数,异步工作机制,不定什么时候执行完),fnFaild())
<script>
window.onload=function()
{
var oBtn=document.getElementById('btn1')
oBtn.onclick=function()
{ //ajax能切仅能 从服务器 读取文件
ajax('abc.txt',function(str)
alert(str);
});
};
</script>
Date().getTime(),加上一个时间数。解决缓存的问题,阻止缓存
如何请求一个动态文件
Ajax 上的所有东西都是文本样式
eval机算字符串里的值,可以把字符串变为数组.
读取服务器上的一个文件, 文件里放一个json
json [(a:12,b:5),(c:8,e:12)];
alert(eval(str[0]).a);
HTTP请求方法
GET :用于获取数据(如:浏览帖子)把数据放在URL(网址里)来提交安全性很低,因为把所有的东西放在网址里,容量很低。优:便于将网址分享给别人,有缓存。
POST: 用于上传数据:提交(如用户注册)把数据放在HTTP的content里(放在不是URL的地方),安全性一般,容量几乎是无限的
name:是给后台数据看的,只用于表单(form里)
Ajax请求:
1.创建Ajax对象
2.链接服务器
3.发送请求
4.接收返回值
1.创建Ajax对象(IE6以上才能用)
var oAjax=new XMLHttpRequset();
在IE6下(加一个插件)
var oAjax=new ActivateXobject(“Microsoft.XMLHTTP”);
全局变量:是window里的一个变量
当你用一个不存在的变量的时候:出错
当你用以一个不存在的属性的时候:undefined;
2.链接服务器
open(方法,url,是否异步)
同步:事一件件来
异步:多件事可以一起做
oAjax.open(‘get’,‘abc.text’,true);
3.发送请求
oAjax.send();
4.接收返回
<script>
function ajax(url,fnsucc,fnFaild)
{
//1.创建ajax对象
var oAjax=null
if(window.XMLHttpRequest)
{
oAjax=new XMLHttpRequest();
}
else
{
oAjax=new ActiveXobject('Microsoft.XMLHTTP');
}
oAjax.open('get','abc.text',true);
oAjax.send();
oAjax.OnReadyStateChange=function() //当Ajax与服务器通信发生的时候使用
{
//alert(oAjax.readyState);
if(oAjax.readyState==4 )//代表完成并不代表是否成功
{
if(oAjax.status==200);//代表成功
{
//alert("成功"+oAjax.responseText);//从服务器返回内容
fnSucc(oAjax.responseText);
}
else
{
//alert('失败');
if(fnFaild)
{
fnFaild();
}
}
}
};
};
</script>
请求状态监控
OnReadyStateChange事件
readyState属性:请求状态
0.(未初始化)还没有调用opean()方法;
1.(载入)一调用send()方法,正在发送请求;
2.(载入已完成)send()方法完成,已收到全部相应内容;
3.(解析)正在解析响应内容;
4.(完成)响应内容解析完成,可以在客户端调用了。(只是完成并不代表成功)
**status属性;**请求结果;如果status=200代表成功
responseText:取回服务器返回的东西
数据类型
什么叫数据类型–英文,中文
XML(被淘汰了)
Json(使用)