js+ajax+json+php 示例

1.test.html源代码 

<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
	
<script language="javascript" type="text/javascript">

/*
1.创建一个新变量 request 并赋值 false。使用 false 作为判断条件,它表示还没有创建 XMLHttpRequest 对象。
2.增加 try/catch 块: 
1.尝试创建 XMLHttpRequest 对象。
2.如果失败(catch (trymicrosoft)): 
1.尝试使用较新版本的 Microsoft 浏览器创建 Microsoft 兼容的对象(Msxml2.XMLHTTP)。
2.如果失败(catch (othermicrosoft))尝试使用较老版本的 Microsoft 浏览器创建 Microsoft 兼容的对象(Microsoft.XMLHTTP)。
3.如果失败(catch (failed))则保证 request 的值仍然为 false。
3.检查 request 是否仍然为 false(如果一切顺利就不会是 false)。
4.如果出现问题(request 是 false)则使用 JavaScript 警告通知用户出现了问题。
*/

var request = false;
try {
  request = new XMLHttpRequest(); //w3c
} catch (trymicrosoft) {
  try {
    request = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (othermicrosoft) {
    try {
      request = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (failed) {
      request = false;
    }
  }
}
if (!request){
  alert("Error initializing XMLHttpRequest!");
}

function getCustomerInfo() {
	var url = "data.php";
	request.open("GET", url, true); //指定连接
	request.onreadystatechange = updatePage;//指定回调
	request.send(null); //请求服务器
}

function updatePage() {
	if (request.readyState == 4){
		if (request.status == 200){
			done(request.responseText);
		}else if (request.status == 404){
			alert("Request URL does not exist");
		}else {
			alert("Error: status code is " + request.status);
		}
	}
}

function done(data){
	
	var json = eval("("+data+")");
	alert(data);
	alert(json);
	var str = "";
    for (var one in json)  {
        for(var key in json[one])   {
            str += json[one][key] + ",";
        }
		str += "<br/>";
    }
    document.getElementById("jsondata").innerHTML = str;

}

</script>
<input type="button" onclick="getCustomerInfo()" value="点击测试json" /> 
<div id="jsondata">&nbsp;</div>

2.data.php源代码

<?php 

$arr=array();
$arr[] = array('name' =>'往往','nick' => '深空', 'email' => 'aa@123.com', 'website' => 'http://www.oschina.net'  );   
$arr[] = array('name' =>'呵呵','nick' => '玩玩', 'email' => 'bb@123.com', 'website' => 'http://www.oschina.net'  );  
$json_string = json_encode($arr);   
echo $json_string;   

?>

转载于:https://my.oschina.net/wangwang110/blog/10712

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值