在html中能够使用ajax吗?

html-css024

在html中能够使用ajax吗?,第1张

可以使用的。\x0d\x0aajax的基本用法:ajax能做到无刷新数据交互,给用户体验带来好处的同时也减小了服务器的压力,所以运用ajax能使网站性能更强劲、更吸引用户。\x0d\x0a第一步:ajax引擎对象的创建(相对简单的创建方法,更严格的方式请参考W3C):\x0d\x0a第二步:创建请求机制:(建立与服务器端的通信接口)\x0d\x0a第三步:处理返回的数据(当 readyState 等于 4 且状态为 200 时,表示响应已就绪,可以在前端进行数据处理了。)

比如服务器上有张表或者list\x0d\x0aidnamesex\x0d\x0a1张三男\x0d\x0a2李四女\x0d\x0a3王五男\x0d\x0a你首先在后台代码中把这个表处理成为JSON格式然后用Response.write的方法输出来,比如这样\x0d\x0a[{id:1,name:'张三',sex:'男'},{id:2,name:'李四',sex:'女'},{id:3,name:'王五',sex:'男'}]\x0d\x0aJSON是用于在JS中描述实体对象的一种方式,具体关于JSON的知识可以看w3school.com.cn上的相关内容,我这儿就不给你细讲了,很简单,我只说做法:\x0d\x0a为了方便使用,你需要在你的页面中引用jQuery库,我不知道你用什么语言做的后台程序,原理一样\x0d\x0a$.ajax({\x0d\x0aurl:"这里换成你写好的用于把表转换成JSON的后台处理文件地址,比如a.aspx?参数",\x0d\x0atype:"POST",//这里是AJAX请求的方式\x0d\x0adataType:"JSON",//如果你回发的内容是JSON格式的就用这个,否则用Text或其他\x0d\x0adata:{\x0d\x0a参数1:值,\x0d\x0a参数2:值,\x0d\x0a......\x0d\x0a参数n:值\x0d\x0a},//要发送的参数,如果无参数可以不写此项\x0d\x0asuccess:function(data)\x0d\x0a{\x0d\x0a//此处写入发送成功后要处理的代码,而参数里的这个data,就是请求成功后返回来的上面那个格式的JSON,你可以用data[i]的值来取其中一行,如取张三的数据就是\x0d\x0adata[0].name,就取出了张三的name属性\x0d\x0a所以你可以在这里用循环去处理data,然后将结果用document.write的方式输出来就完成了。\x0d\x0a},\x0d\x0aerror:function(XMLHttpRequest,Error,F)\x0d\x0a{\x0d\x0a//出错后可以在这里给出提示,Error参数表示错误信息\x0d\x0a}\x0d\x0a})\x0d\x0a还有弄不清楚的地方可以继续和我探讨。

利用回调函数获取服务器返回的结果

JavaScript code

var xmlHttp

function createXMLHttpRequest() {

if(window.XMLHttpRequest) {

xmlHttp = new XMLHttpRequest()

} else if (window.ActiveXObject) {

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")

}

}

function routeList(){

createXMLHttpRequest()

url = "manage_action_class.php?"&ran="+Math.random() //后端请求页面

method = "GET" //传输方式

xmlHttp.open(method,url,true)

xmlHttp.onreadystatechange = showList //这里为回调函数

xmlHttp.send(null)

}

function showList(){

if (xmlHttp.readyState == 4){

if (xmlHttp.status == 200){

var text = xmlHttp.responseText //这里获得服务器返回的数据

document.getElementById("route").innerHTML = text //将数据放入html指定div中

}else {

alert("response error code:"+xmlHttp.status)

}

}

}