AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
AJAX = 异步 JavaScript和XML(标准通用标记语言的子集)。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。
Ajax 核心类 XmlHttpRequest /ActiveXObject (主要是对于IE和非IE,不过IE的新板本已经开始支持XmlHttpRequest)
Ajax主体思想就是用这个类来发送信息,接收信息,实现局部的更新
对Ajax原理猜想:应该就是在JavaScript中构造了一个表单,提交过去,然后得到返回值,根据返回值显示相应的内容。相对于整个页面提交,他提交的参数会少一些,得到反馈也会少一些,快一些。
下面看一个简单的例子
servlet返回给 Ajax的形式有3种 string xml json 使用时要注意其中的区别。
Ajax 核心类 XmlHttpRequest /ActiveXObject (主要是对于IE和非IE,不过IE的新板本已经开始支持XmlHttpRequest)
Ajax主体思想就是用这个类来发送信息,接收信息,实现局部的更新
对Ajax原理猜想:应该就是在JavaScript中构造了一个表单,提交过去,然后得到返回值,根据返回值显示相应的内容。相对于整个页面提交,他提交的参数会少一些,得到反馈也会少一些,快一些。
下面看一个简单的例子
//页面
<body>
<form action="">
用户名:<input type="text" name="uname" id="uname"/><input type="button" value="检查用户名" οnclick="check();"/><span id="result"></span>
</form>
</pre><pre name="code" class="html">
//JavaScript
var 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 使用时要注意其中的区别。