ajax处理php返回json数据的实例代码
更新时间:2013年01月24日 17:05:33 作者:
有时候我们需要ajax处理php返回的json数据,适合经常用php开发的朋友,需要的朋友可以参考下
test.html
<label onclick="javascript:post_data();">click </label>
function ajax_init()
{
var ajax=false;
try {
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}
function post_data()
{
var url = "/server/xml.php";
var show_check = document.getElementById("show_check");
var show_flag = document.getElementById("show_flag");
var ajax = ajax_init();
ajax.open("GET", url, true);
//var img = "<img src='/img/loading.gif'>";
ajax.onreadystatechange = function()
{
if (ajax.readyState == 4 && ajax.status == 200)
{
var ret = ajax.responseText;
var show_info = eval(ret);
show_check.innerHTML = show_info[0].no1; // bsd
show_flag.innerHTML = show_info[0].no2; // wuddy
//alert("responseXML's value: " + info[0].firstChild.data);
}
/*else
{
show.innerHTML = img;
}*/
}
ajax.send(null);
}
json.php
<?php
/* 这边如果写成 $info = array('no1'=>'bsd', 'no2'=>'wuddy', 'no3'=>'xie'); */
/* 同样要把html文件中必成 var show_info = eval('[' + ret + ']'); 都是返回一个对象 */
$info = array(array('no1'=>'bsd', 'no2'=>'wuddy', 'no3'=>'xie'));
$userinfo = json_encode($info);
echo $userinfo;
?>
复制代码 代码如下:
<label onclick="javascript:post_data();">click </label>
function ajax_init()
{
var ajax=false;
try {
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}
function post_data()
{
var url = "/server/xml.php";
var show_check = document.getElementById("show_check");
var show_flag = document.getElementById("show_flag");
var ajax = ajax_init();
ajax.open("GET", url, true);
//var img = "<img src='/img/loading.gif'>";
ajax.onreadystatechange = function()
{
if (ajax.readyState == 4 && ajax.status == 200)
{
var ret = ajax.responseText;
var show_info = eval(ret);
show_check.innerHTML = show_info[0].no1; // bsd
show_flag.innerHTML = show_info[0].no2; // wuddy
//alert("responseXML's value: " + info[0].firstChild.data);
}
/*else
{
show.innerHTML = img;
}*/
}
ajax.send(null);
}
json.php
复制代码 代码如下:
<?php
/* 这边如果写成 $info = array('no1'=>'bsd', 'no2'=>'wuddy', 'no3'=>'xie'); */
/* 同样要把html文件中必成 var show_info = eval('[' + ret + ']'); 都是返回一个对象 */
$info = array(array('no1'=>'bsd', 'no2'=>'wuddy', 'no3'=>'xie'));
$userinfo = json_encode($info);
echo $userinfo;
?>
相关文章
JS中JSON.parse(JSON.stringify())实现深拷贝
深拷贝就是完全拷贝一份新的对象,本文主要介绍了JS中JSON.parse(JSON.stringify())实现深拷贝,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-08-08
JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码
这篇文章主要介绍了JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码,需要的朋友可以参考下2017-09-09


最新评论