对Ajax的一些基本理解
一、ajax的入门
1、XMLHttpRequest对象的使用(使用XMLHttpRequest解析xml文件)
onreadystatechange
指定当readyState属性改变时的事件处理句柄
open()
创建一个新的http请求,并指定此请求的方法、URL等信息
send()
发送请求到http服务器并接收回应
readyState
返回XMLHTTP请求的当前状态
status
返回当前请求的http状态码
responseText
将响应信息作为字符串返回
responseXML
将响应信息格式化为Xml Document对象并返回
out回应客户
1、“添加新项” 新建一个XML文件来存放要被调用的数据。
XMLFile.xml
<?xml version="1.0" encoding="utf-8" ?>
<response>
<res>
对不起,登录失败!
</res>
</response>
2、“添加新项” 新建一个JSP页,添加代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Ajax异步调用</title>
</head>
<body>
<div style="background-color:Yellow" id="mytext">Ajax异步调用
</div>
<input type="button" value="更新" onclick="startHTTP()" />
</body>
</html>
<script type="text/javascript">
var XMLHttpReq;
function createHTTP(){
//根据不同的浏览器创建XMLHttpRequest
if(window.ActiveXObject)//ie浏览器
{
XMLHttpReq=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest){//其他浏览器
XMLHttpReq=new XMLHttpRequest();
}
}
//开始调用
function startHTTP()
{
相关文档:
1、在服务端加 header("Cache-Control: no-cache, must-revalidate");
2、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("If-Modified-Since","0");
3、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("Cache-Control","no-cache");
4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.rando ......
我在上一篇文章中使用原始javascript的方式构造ajax调用,但从全局看,不仅仅代码的阅读性比较低而且隐藏发生错误的可能,比如在页面加载时就改变dom结构,还要时刻关注浏览器的兼容性,而使用jQuery我们将不存在类似的问题,代码的可读性也显著提高,代码量小,下面是jQuery版本的js部分代码,希望能够对读者 ......
ajax就是javascript 因为以前javascript没有httpXMLrequest对象,从IE5.0之后出现,说白了ajax就是可以用javascript向服务器发送请求,并且能接收服务返回的内容,写ajax程序只要写出一个发送函数和一个接收服务员返回的函数即可,在服务器程序中可以返回字符串也可以返回xml,实例程序http://xsuo.javaeye.com/blog/578637 ......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript" src="http://www.google.com/jsapi"></script> ......