最近学习了Ajax觉得挺不错现在简单的写一点。
1.Ajax发送请求:
function send_request(url){//制定文件位置,创建对象,发送请求,绑定返回数据函数
http_request=new ActiveXObject("Microsoft.XMLHTTP");
http_request.onreadystatechange=processRequest;
http_request.open("GET",url,true);
http_request.send(null);
}
定义一个javascript 函数,把url作为参数传递进去,首先要创建一个Ajax数据传递的对象xmlRequest,xmlRequest的创建根据浏览器的不同也是不同的,在微软的ie中用的是这样创建的:
new ActiveXObject();
但是这个构造函数需要一个字符串型的参数,这个参数有两种形式:Microsoft.XMLHTTP,和Msxml2.XMLHTTP ,IE高版本的浏览器用的都是第一种形式,但是老式的浏览器就是第二种了。
再就是firefox的浏览器的创建对象的方法:
request = new XMLHttpRequest();
在火狐里面直接创建就好了,没有什么参数;而且函数的名字是那么的好理解!呵呵!
创建了这个对象之后就是对这个对象进行操作,首先要设置一下服务器返回来的数据在哪个方法里面进行处理,用的是xmlRequest对象的onreadystatechange的属性,这个属性的值就是返回数据处理的那个函数的名字。
再之后的操作就是打开请求,用的是xmlRequest对象的open方法(注意这是一个方法需要有括号)这个方法有三个参数,第一个参数是一个字符串意思是发送数据的方式(get 和post)第二个参数是发送到服务器端的哪个文件,或者说是打开读取哪个文件,第三个参数是一个boolean值是确定这个方法是不是阻塞式的!就是说运行到这是不是就停下了!直到操作完成之后在运行下面的操作。如果是运行到这停下就设置为false。反之就是运行到这之后还可以继续运行下面的操作,类似多线程。
最后就是发送这个请求。调用xmlRequest的send方法这个方法有一个参数是当open方法设置的发送方式为post的时候在其中放置数据的,一般是一个字符串。如果设置的发送方式为GET因为数据是放置在url里传送的所以不用在send方法里面方式任何数据所以为null。
2.读取在前面绑定的那个方法里面获取服务器短的输出读取文本可以用responeText来获取在服务器端的输出字符串。而需要读取xml的时候呢responseXML这个方法了。那个url里传入的也是这个xml文件的地址。
其他东西就是javascript操作了不是Ajax的内容了吧。就说到这吧。附上一段读取xml的代码,读取服务器端输出的类似。
转载于:https://www.cnblogs.com/SXLBlog/archive/2009/09/19/1570195.html