Ajax的使用和函数的编写

本文介绍了Ajax技术,一种在不刷新整个网页的情况下更新部分内容的方法。通过异步传输方式,Ajax利用JavaScript对象XmlHttpRequest实现局部数据更新,改善用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是Ajax(缩写:Asynchronous JavaScript and Xm)

异步的,在不刷新刷新整体网页内容的情况下,能自动更新部分网页内容的技术!

  • 要说Ajax就不得不说,异步传输和同步传输。
    • 异步是值:发送方发出数据后,不等接收方发回响应,接着发送下一个数据包的通讯方式。
    • 同步是指:发送方发出数据后,等待接收方发回响应以后才发下一个数据包的通讯方式。
  • 也可以理解为:
    • 异步传输:你传吧,我去做我的事了,传输完了告诉我一声。
    • 同步传输:你现在传输,我要看着你传输完成,才去做别的事。

Ajax的核心是JavaScript对象XmlHttpRequest。

Ajax的缺陷:

Ajax并不是完美的技术,也存在缺陷:
  • AJAX大量使用了Javascript和AJAX引擎,而这个取决于浏览器的支持。IE5.0及以上、Mozilla1.0、NetScape7及以上版本才支持,Mozilla虽然也支持AJAX,但是提供XMLHttpRequest的方式不一样。所以,使用AJAX的程序必须测试针对各个浏览器的兼容性。 
  • AJAX更新页面内容的时候并没有刷新整个页面,因此,网页的后退功能是失效的;有的用户还经常搞不清楚现在的数据是旧的还是已经更新过的。这个就需要在明显位置提醒用户“数据已更新”。

XMLHttpRequest对象属性:

  • onreadystatechange:状态改变的事件触发器。
  • readyState:对象状态:
    • 0=未初始化
    • 1=读取中
    • 2=已读取
    • 3=交互中
    • 4=完成
  • responseText:服务器进程返回数据的文本版本。
  • responseXML:服务器进程返回数据的 兼容DOM的Xml文档对象。
  • status:服务器返回的状态码,如404=“文件未找到”,200=“成功”。
  • statusText:服务器返回的状态文本信息。
Ajax函数的编写:

function ajax(url, fnSucc, fnFaild)
{
    //1.创建Ajax对象
    if(window.XMLHttpRequest)
    {
        var oAjax=new XMLHttpRequest();
    }
    else
    {
        var oAjax=new ActiveXObject("Microsoft.XMLHTTP");
    }
    
    //2.连接服务器(打开和服务器的连接)
    oAjax.open('GET', url, true);
    
    
    //3.发送
    oAjax.send();
    
    //4.接收
    oAjax.onreadystatechange=function ()
    {
        if(oAjax.readyState==4)
        {
            if(oAjax.status==200)
            {
                //alert('成功了:'+oAjax.responseText);
                fnSucc(oAjax.responseText);
            }
            else
            {
                //alert('失败了');
                if(fnFaild)
                {
                    fnFaild();
                }
            }
        }
    };
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值