ajax

来源:互联网 发布:大学入伍体检 知乎 编辑:程序博客网 时间:2024/06/05 11:00
1.Ajax(Asynchronous JavaScript and XML)现在允许浏览器和服务器通信而无须刷新当前页面的技术

2.不用刷新整个页面便可与服务器通讯的办法:XMLHttpRequest、Flash、Java applet、框架、隐藏的iframe

3.XMLHttpRequest的方法
    abort():停止当前请求
    getAllResponseHeaders():把HTTP请求的所有响应首部作为键/值对返回
    getResponseHeader("header"):返回指定首部的串值
    open("method", "url"):建立对服务器的调用。
    send(content):向服务器发送请求
    setRequestHeader("header", "value"):把指定首部设置为所提供的值。在设置任何首部之前必须先调用open()
    
4.XMLHttpRequest的属性
    onreadystatechange:每个状态改变时多会触发这个世界处理器,通常会调用一个javascript函数
    readyState:请求的状态,有5个可取值:0未初始化、1正在加载、2已经加载、3交互中、4完成
    responseText:服务器的响应,表示一个串
    responseXML:服务器的响应,表示为XML。这个对象可以解析为DOM对象
    status:服务器的HTTP状态码(200对应OK、 404对应NotFount等)
    statusText:HTTP状态码的相应文本(OK或NotFount等)
    
5.数据格式
    服务器端的编程语言只能以如下 3 种格式返回数据:XML、JSON、HTML

6.XML数据格式
    优点:1.是一种通用的数据格式
          2.不必把数据强加到已定义好的格式中,而是为数据自定义合适的标记
          3.利用DOM可以完全掌控文档
    缺点:1.如果文档来自于服务器,就必须得保证文档含有正确的首部信息。若文档类型不正确,那么 responseXML 的值将是空的。
          2.当浏览器接收到长的 XML 文件后, DOM 解析可能会很复杂
          
7.JSON(javascript object notation)
    json是javascript原生格式
    优点:1.作为一种数据传输格式,JSON 与 XML 很相似,但是它更加灵巧。
          2.JSON 不需要从服务器端发送含有特定内容类型的首部信息
          
    缺点:1.语法过于严谨
          2.代码不易读
          3.eval 函数存在风险
    
    格式:类似于var student={"name":"enche",
                             "age":22,
                             "sex":"man"};
          
8.HTML
优点:1.从服务器端发送的 HTML 代码在浏览器端不需要用 JavaScript 进行解析。
      2.HTML 的可读性好。
      3.HTML 代码块与 innerHTML 属性搭配,效率高。
      
缺点:缺点:1.若需要通过 AJAX 更新一篇文档的多个部分,HTML 不合适
            2.innerHTML 并非 DOM 标准。
            
9.eval():用于json格式,将字符串当作代码来执行

10.禁用缓存:可以在url的尾部加上?time=new Date();

11.如果用 POST 请求向服务器发送数据,需要将 “Content-type” 的首部设置为 “application/x-www-form-urlencoded”.它会告知服务器正在发送数据,并且数据已经符合URL编码了。
    request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    
12.jquery实现Ajax
    第一层:$.ajax()
    第二层:load(),$.get(),$.post()
    第三层:$.getScript(),$.getJSON()
    
13.load()
    元素A.load(url);将url页面加入到元素A中(GET请求)
    元素A.load(url,JSON对象);将url页面加入到元素A中(POST请求)
    
14.通过URL选择些子元素
    url+" li";选择对应url下的li元素
    
15.$.get():不会自动加入到文本元素中,需要在括号中加入function
    $.get(url,[JSON],function(data){})
    
16.$.getJSON():用法类似$.get()

17.$.post(url,[data],function(data){}):post请求,返回的数据对象是function中的参数

18.后台jsp创建后,后台会对应前台发送来的url进行对应的处理,然后调用request.getParameter()来解析前台发来的数据,最后使用result.getWriter().print()将数据发往前台

原创粉丝点击