ajax的数据处理

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
var hahaStr="{'name':'haha','age':12,'address':'wuhan'}"; /*注意此处是字符串,,,但是里面是json数据*/

/*为什么eval这里要添加("("+data+")") ?
由于json是以{ }的方式来开始以及结束的,在eval中会被当成一个语句块来处理,故必须强制将它转换成一种表达式。
加上圆括号是使eval函数在处理时强制将括号内的表达式(expression)转化为对象而不作为语句(statement)来执行。
若不加外层的括号,eval会将大括号识别为js代码块的开始和结束标记,{ }将会被认为执行了一句空语句。*/

var test=eval("("+hahaStr+")");
alert(test.name);
</script>
</head>
<body>
</body>
</html>

 

<!DOCTYPE html>
<!--
作者:1243860037@qq.com
时间:2017-11-27
描述:
使用HTML格式,进行请求
优点:简单方便,可直接与innerHTML进行对接
-->
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
window.onload=function()
{
var anode=document.getElementsByTagName("a");
for(var i=0;i<anode.length;i++)
{
anode[i].onclick=function()
{
var request=new XMLHttpRequest();
var method="GET";
var url=this.href;
request.open(method,url);
request.send(null);
request.onreadystatechange=function()
{
if(request.readyState==4) /*注意此处的S大写*/
{
if(request.status==200)
{
document.getElementById("div1").innerHTML=request.responseText;
}
}
}

return false;
}
}
}
</script>
</head>
<body>
<a href="libai.txt">李白</a>
<a href="huanghelou.txt">黄鹤楼</a>
<a href="changjiang.txt">长江</a>
<div id="div1"style="width: 800px;height: 200px;border: 1px solid red;"></div>
</body>
</html>

posted on 2017-11-27 13:10  xiaoxiaoyao61  阅读(130)  评论(0编辑  收藏  举报

导航