When the whole world is about to rain, let's make it clear in our heart together

热爱前端开发,专注于前端

Ajax类库需要注意的问题

构建Ajax类库时,注意四步就可以了:

1:创建Ajax  对象

2:链接服务器

3:发送请求

4:返回响应

下面是我自己写的一个Ajax类库:

复制代码
function  ajax(url,fnn,fai)
{
//1:创建ajax对象
var oAjax=null;
if(window.XMLHttpRequest)----这里由于没有XMLHttpRequest这个东西,所以会报错,但加上window后,相当于window的一个属性。
{
oAjax=new XMLHttpRequest();
}
else
{
oAjax=new ActiveXObject("Microsoft.XMLHTTP");
}
//2:链接服务器open(方法,URL,是否异步)
oAjax.open('GET',url,true);
//3:发送请求
oAjax.send();
//4:接受返回
oAjax.onreadystatechange=function()
{
if(oAjax.readyState==4)
{
if(oAjax.status==200)
{
fnn(oAjax.responseText);
}
else
{
if(fai)
{
fai();
}
}
}
};
复制代码

需要注意一下浏览器的问题:  

    IE6以上:
        XMLHttpRequest() 来创建Ajax对象
    IE6:
    ActiveXObject("Microsoft.XMLHTTP")来创建对象

2:Ajax请求状态控制有以下集中情况:

复制代码
onreadystatechange事件

        –readyState属性:请求状态

        »0  (未初始化)还没有调用open()方法

        »1  (载入)已调用send()方法,正在发送请求

        »2  (载入完成)send()方法完成,已收到全部响应内容

        »3  (解析)正在解析响应内容

        »4  (完成)响应内容解析完成,可以在客户端调用了

        –status属性:请求结果

        –responseText:即返回URL中的结果。
复制代码

 3:Ajax的核心是XMLHttpRequest()对象,即XHR。

     XHR作用:无须刷新页面即可从服务器取得数据,不一定是XML数据。

posted @   婷风  阅读(615)  评论(2编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示