Ajax

来源:互联网 发布:手机语音聊天软件 编辑:程序博客网 时间:2024/06/05 05:19
AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
AJAX = 异步 JavaScript和XML(标准通用标记语言的子集)。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。

Ajax  核心类 
XmlHttpRequest /ActiveXObject  (主要是对于IE和非IE,不过IE的新板本已经开始支持XmlHttpRequest

Ajax主体思想就是用这个类来发送信息,接收信息,实现局部的更新
对Ajax原理猜想:应该就是在JavaScript中构造了一个表单,提交过去,然后得到返回值,根据返回值显示相应的内容。相对于整个页面提交,他提交的参数会少一些,得到反馈也会少一些,快一些。
下面看一个简单的例子
//页面 <body>      <form action="">       用户名:<input type="text" name="uname" id="uname"/><input type="button" value="检查用户名" onclick="check();"/><span id="result"></span>      </form>     
</pre><pre name="code" class="html">
 //JavaScriptvar xmlhttp; //核心对象; function createXMLHttp(){ //这个函数用来创建一个 核心对象XmlHttpRequest 根据浏览器的不同,创建不同的 if(window.XMLHttpRequest){ alert('标准'); xmlhttp=new XMLHttpRequest(); } else{ xmlhttp=new ActiveXObject("MSXML2.XMLHTTP"); //IE浏览器 } }    function check(){           var uname=document.getElementById("uname").value;           createXMLHttp();           xmlhttp.open("get","servlet",true); //servlet 对应相应的 servlet url           xmlhttp.send(null);     //发送数据           xmlhttp.onreadystatechange=change;     //回调函数;显示服务器返回的数据的函数                }        function change(){                     if(xmlhttp.readyState==4){                if(xmlhttp.status==200){                                var value= xmlhttp.responseText;    //字符串方式返回(与Servlet中对应)                   document.getElementById("result").innerHTML=value; //在页面上显示返回结果                }            }        }  </body>
</pre>Java中的servlet 代码 ---------------------------------------------------------------------------<pre name="code" class="java">
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=gbk");request.setCharacterEncoding("gbk");PrintWriter out = response.getWriter();        String uname=request.getParameter("uname");        StringBuffer sb=new StringBuffer();        if("admin".equals(uname)){        sb.append(uname+"巳注册");        }        else{        sb.append(uname+"可以使用");        }        out.print(sb);   //向客户输出 IE       out.flush();out.close();}




servlet返回给  Ajax的形式有3种   string xml  json  使用时要注意其中的区别。




1 1
原创粉丝点击