首页 > 学院 > 开发设计 > 正文

Ajax Demo

2019-11-06 08:50:14
字体:
来源:转载
供稿:网友

今天从头复习了一下Ajax,写个demo增强一下印象,顺便记录一下遇到的一些问题。


1、什么是ajax?

ajax= Asynchronous javaScript and xml(异步的 Javascript 和 XML)。它是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

2、怎么使用ajax?

工具:Chrome浏览器、tomcat服务器

启动tomcat服务器

打开tomcat里面bin目录下的startup.bat文件,启动tomcat服务器。(检查tomcat是否启动只要在浏览器里输入localhost:8080,按回车访问,若出现下图则成功启动。) 这里写图片描述

创建需要利用ajax访问的文件以及文件内容

该文件可以是任何类型,比如 .txt和.js或者.xml。我现在在tomcat里面的webapps下面的ROOT路径里面新建一个txt1.txt,里面的内容写一个json格式的数据:{“name”:”aa”,”age”:25},记得另存为utf-8的格式,否则好像会乱码。

创建ajax请求文件 注意:这里有一个坑,如果我在本地新建的ajax请求文件,在Firefox浏览器下面运行是可以访问到数据的,但是chrome浏览器有本地跨域的限制,需要在同一个域下面访问,所以必须也在tomcat里面的webapps下面的ROOT路径里面新建一个ajaxDemo.html,这样就不会遇到跨域问题(其实跨域也有很多方式解决)。 ajaxDemo.html里面的内容如下:<!doctype html><html><head> <title>ajax demo</title> <meta charset="utf-8"></head><body><!--为了感受异步,特地加了一个计数器--> <div id="myDiv1"></div> <div id="myDiv"></div> <button type="button" onclick="loadXMLDoc()">请求数据</button><script type="text/javascript"> var a = 1; var id = setInterval(function(){ document.getElementById("myDiv1").innerHTML=a; a+=1; },0); function loadXMLDoc(){/* 每当 readyState 改变时,就会触发 onreadystatechange 事件* readyState 属性存有 xmlhttpRequest 的状态信息* readyState属性值:0代表请求未初始化;1代表服务器连接已建立;2代表请求已接收;3代表请求处理中;4代表请求已完成,且响应已就绪* status属性值:200代表“ok",404代表未找到页面*/ xmlhttp.onreadystatechange=function(){ if (xmlhttp.readyState==4 && xmlhttp.status==200) { /* 如需获得来自服务器的响应,请使用 XMLHttPRequest 对象的 responseText 或 responseXML 属性* responseText:获得字符串形式的响应数据* responseXML:获得 XML 形式的响应数据*/ document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","txt1.txt",true); xmlhttp.send(null); } </script></body></html>

这样当你通过localhost:8080/ajaxDemo访问的时候也有一个一直增加的计数器和一个button,点击button就可以利用ajax访问到txt1.txt文件里面的json格式的数据。结果如下图所示: 这里写图片描述


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表