Ajax返回html和json格式数据

Ajax可以返回text和xml格式
可以用Ajax返回大段的html文本和json格式的字符串,然后用eval()方法
转化为json对象
php中的json编码:json_encode();
php中的json解码:json_decode();

前端页面

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
<script type="text/javascript">
function returnjson(){
var xhr=new XMLHttpRequest();
xhr.open('GET','./01.php',true);
xhr.onreadystatechange=function (){
if(this.readyState==4){
//直接接收是有规律的字符串
//alert(this.responseText);
var json=eval('('+this.responseText+')');
var str='名字:'+json.name+"<br/>";
str=str+'年龄:'+json.age+"<br/>";
document.getElementById('json').innerHTML=str;
}
}
xhr.send(null);
}
function returnhtml(){
var xhr=new XMLHttpRequest();
xhr.open('GET','./02.php',true);
xhr.onreadystatechange=function (){
if(this.readyState==4){
document.getElementById('html').innerHTML=this.responseText;
}
}
xhr.send(null);
}
</script>
</head>
<body>
<form>
<input type="button" value="返回json格式数据" onclick="returnjson();"/>
<input type="button" value="返回html格式数据" onclick="returnhtml();"/>
<div id="json">这里显示返回json的信息</div>
<div id="html">这里显示返回html的信息</div>
<form>
</body>
</html>

01.php

<?php
//可以从数据库中取数据 ?>
{name:'lisi',age:18}

02.php

<?php
//从数据库中取出数据,用php打印成html代码
$arr=array('数据1','数据2','数据3');
foreach($arr as $v){
echo '<li>'.$v.'</li>';
}
?>
上一篇:QT全局热键(用nativeKeycode封装API,不跨平台)


下一篇:使用C#中JavaScriptSerializer类将对象转换为Json格式数据