1.调用AJAX返回JSON数据

用下拉列表显示Nation表民族名称

主页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="../jquery-1.11.2.min.js"></script>
</head> <body>
<select id="sel"></select>
</body>
</html>
<script type="text/javascript">
$(document).ready(function(e) {
$.ajax({
//因为不用传数据,所以data与type不用写
url:"ChuLi.php",
dataType:"JSON", //dataType中T必须大写,否则会出错
success: function(data){
/*var js = { //二维数组的json数据形式:
aa:{code:"n001",name:"汉族"},
bb:{code:"n002",name:"苗族"},
};*/
var str = "";
for(var k in data)
{
str+="<option value='"+data[k][0]+"'>"+data[k][1]+"</option>";
}
$("#sel").html(str);
}
});
}); </script>

处理页面:

<?php
include("../DB.class.php");
$db = new DB();
$sql = "select * from Nation";
$attr = $db->Query($sql);
echo json_encode($attr); //将数组转换为json数据来输出

2.将调用AJAX返回JSON数据方法封装到数据库类里面

class DB
{
public $host="localhost"; //服务器地址 默认值为localhost
public $uid="root"; //数据库用户名 默认值为root
public $pwd="123"; //数据库密码 默认值为123 //AJAX调用返回JSON数据
public function JsonQuery($sql,$type=0,$db="mydb")
{
//1.造数据源
$dsn = "mysql:dbname=$db;host=$this->host";
//2.造对象
$pdo = new PDO($dsn,$this->uid,$this->pwd);
//3.预处理
$stm = $pdo->prepare($sql);
//4.执行预处理语句
if($stm->execute())
{
if($type==0)
{
$attr = $stm->fetchAll();
return json_encode($attr);
}
else
{
if($stm)
{
return "OK";
}
else
{
return "NO";
}
}
}
else
{
echo "执行失败!";
}
}
}

2.调用AJAX返回XML数据

XML(Extensible Markup Language)可扩展标记语言标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言

XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。

XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。

XML:页面之间传递数据,跨平台传递,核心是标签

HTML:超文本标记语言,核心是标签

XML 被设计为传输和存储数据,其焦点是数据的内容。

HTML 被设计用来显示数据,其焦点是数据的外观。

HTML 旨在显示信息,而 XML 旨在传输信息。

XML特点
1.标签名可以自己定义
2.有且只有一个根
3.大小写敏感,双标签大小写必须一样
4.双标签必须完整

XML格式:

<xml version="1.0" >
<Nation>
<one>
<code>n001</code>
<name>汉族</name>
</one>
<two>
<code>n002</code>
<name>苗族</name>
</two>
</Nation>

还是用下拉列表显示Nation表民族名称的例子:

主页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="../jquery-1.11.2.min.js"></script>
</head> <body>
<select id="sel"></select>
</body>
</html>
<script type="text/javascript">
$(document).ready(function(e) {
$.ajax({ url:"chulixml.php",
dataType:"XML", //返回XML文档
success: function(data){
//从XML文档中根据标签名找内容,相当于解析页面数据,例如:
//$(data).find("code").eq(0).text();//标签名为code的第一个元素的内容
//根据最外层的根nation取到所有内容,再取里面的子元素放入变量ch中
var ch = $(data).find("nation").children();
var str = "";
for(var i=0;i<ch.length;i++)
{
//从ch中循环出每一条数据的code与name
var code = $(ch[i]).find("code").text();
var name = $(ch[i]).find("name").text();
str+="<option value='"+code+"'>"+name+"</option>";
} $("#sel").html(str);
} });
}); </script>

处理页面:

<?php
include("../DB.class.php");
$db = new DB();
$sql = "select * from Nation";
$attr = $db->Query($sql);
//返回XML数据就要写一个XML文档
/*echo "<?xml version='1.0'?>"; */ //XML文档的头可以不写
echo "<nation>";
foreach($attr as $k=>$v)
{
echo "<shuju{$k}>";
echo "<code>{$v[0]}</code>";
echo "<name>{$v[1]}</name>";
echo "</shuju{$k}>";
}
echo "</nation>";

调用AJAX返回JSON、XML数据类型的更多相关文章

  1. jquery 调用ajax返回json

    ie调用可以,火狐和chrome皆失败,找了半天原因. 被屏蔽了. 火狐和chrome 对同一个域名不同端口的调用也严格限制,不给调用.只能用jsonp. 查看网络的返回状态,错误信息,F12 很重要 ...

  2. javascript 解析ajax返回的xml和json格式的数据

    写个例子,以备后用 一.JavaScript 解析返回的xml格式的数据: 1.javascript版本的ajax发送请求 (1).创建XMLHttpRequest对象,这个对象就是ajax请求的核心 ...

  3. 快速掌握Ajax-Ajax基础实例(Ajax返回Json在Java中的实现)

    (转)实例二:Ajax返回Json在Java中的实现 转自http://www.cnblogs.com/lsnproj/archive/2012/02/09/2341524.html#2995114 ...

  4. PHP AJAX 返回JSON 数据

    例子:利用AJAX返回JSON数据,间接访问数据库,查出Nation 表,并用下拉列表显示 造一个外部下拉列表框 </select> JQurey代码 $(document).ready( ...

  5. php返回json,xml,JSONP等格式的数据

    php返回json,xml,JSONP等格式的数据 返回json数据: header('Content-Type:application/json; charset=utf-8'); $arr = a ...

  6. JQuery处理json与ajax返回JSON实例

    一.JSON的一些基础知识. JSON中对象通过“{}”来标识,一个“{}”代表一个对象,如{“AreaId”:”123”},对象的值是键值对的形式(key:value). “[]”,标识数组,数组内 ...

  7. [Javascript,JSON] JQuery处理json与ajax返回JSON实例

    转自:http://www.php100.com/html/program/jquery/2013/0905/5912.html [导读] json数据是一种经型的实时数据交互的数据存储方法,使用到最 ...

  8. (转)JQuery处理json与ajax返回JSON实例

    son数据是一种经型的实时数据交互的数据存储方法,使用到最多的应该是ajax与json配合使用了,下面我来给大家介绍jquery处理json数据方法. 一.JSON的一些基础知识. JSON中对象通过 ...

  9. jquery ajax返回json数据进行前后台交互实例

    jquery ajax返回json数据进行前后台交互实例 利用jquery中的ajax提交数据然后由网站后台来根据我们提交的数据返回json格式的数据,下面我来演示一个实例. 先我们看演示代码 代码如 ...

随机推荐

  1. 360 网络攻防 hackgame 解题报告(通关)

    地址:http://challenge.onebox.so.com/ 1.referrer or host 2.js decode 3.urldecode, ASCII 4.JFIF * 2 5.go ...

  2. MFC使用自带的MSXML6.dll解析xml(开发环境vc2010)

    程序是win32控制台程序 // msxml.cpp : 定义控制台应用程序的入口点. #include "stdafx.h" #include <iostream> ...

  3. Harmonic Number 求Hn; Hn = 1 + 1/2 + 1/3 + ... + 1/n; (n<=1e8) T<=1e4; 精确到1e-8; 打表或者调和级数

    /** 题目:Harmonic Number 链接:https://vjudge.net/contest/154246#problem/I 题意:求Hn: Hn = 1 + 1/2 + 1/3 + . ...

  4. mysql explain的解释

    详解MySQL中EXPLAIN解释命令 explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 使用方法,在select语句前加上e ...

  5. 深度历险:Redis 内存模型详解

    https://mp.weixin.qq.com/s/Gp6Ur7omGY6ZqDWygU2meQ Redis 是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说 Redi ...

  6. 结果集(ResultSet)用法

    结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等. 结果集读取数据 ...

  7. 很easy的js双向绑定框架(二):控制器继承

    初衷 上一篇已经实现了数据的双向绑定,但model的控制范围是整个文档.在实际project中必需要有作用范围,以便做ui模块的拆分. 这一篇,我们希望实现像angularjs一样的控制器继承: 1. ...

  8. 更改centos 7 的默认启动为命令界面

    vi /etc/inittab 可以看到这样两行: # To set a default target, run:# systemctl set-default TARGET.target 故: su ...

  9. [Android L]关于Android L的Service启动问题

    一 问题描写叙述 Android L[Android5.X.X] 版本号通过Intent隐式启动service时将会报出下面错误: AndroidRuntime(  792): java.lang.I ...

  10. 浅谈usort、uasort、uksort

    前言:这三个函数都是php提供给开发者自定义的数组排序函数. 1.usort:按值排序,索引重新定义 a.基础案例 //自定义比较的函数 function mysort($a,$b){ if($a = ...