1.调用AJAX返回JSON数据

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

主页面:

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

处理页面:

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

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

  1. class DB
  2. {
  3. public $host="localhost"; //服务器地址 默认值为localhost
  4. public $uid="root"; //数据库用户名 默认值为root
  5. public $pwd="123"; //数据库密码 默认值为123
  6.  
  7. //AJAX调用返回JSON数据
  8. public function JsonQuery($sql,$type=0,$db="mydb")
  9. {
  10. //1.造数据源
  11. $dsn = "mysql:dbname=$db;host=$this->host";
  12. //2.造对象
  13. $pdo = new PDO($dsn,$this->uid,$this->pwd);
  14. //3.预处理
  15. $stm = $pdo->prepare($sql);
  16. //4.执行预处理语句
  17. if($stm->execute())
  18. {
  19. if($type==0)
  20. {
  21. $attr = $stm->fetchAll();
  22. return json_encode($attr);
  23. }
  24. else
  25. {
  26. if($stm)
  27. {
  28. return "OK";
  29. }
  30. else
  31. {
  32. return "NO";
  33. }
  34. }
  35. }
  36. else
  37. {
  38. echo "执行失败!";
  39. }
  40. }
  41. }

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格式:

  1. <xml version="1.0" >
  2. <Nation>
  3. <one>
  4. <code>n001</code>
  5. <name>汉族</name>
  6. </one>
  7. <two>
  8. <code>n002</code>
  9. <name>苗族</name>
  10. </two>
  11. </Nation>

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

主页面:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>无标题文档</title>
  6. <script src="../jquery-1.11.2.min.js"></script>
  7. </head>
  8.  
  9. <body>
  10. <select id="sel"></select>
  11. </body>
  12. </html>
  13. <script type="text/javascript">
  14. $(document).ready(function(e) {
  15. $.ajax({
  16.  
  17. url:"chulixml.php",
  18. dataType:"XML", //返回XML文档
  19. success: function(data){
  20. //从XML文档中根据标签名找内容,相当于解析页面数据,例如:
  21. //$(data).find("code").eq(0).text();//标签名为code的第一个元素的内容
  22. //根据最外层的根nation取到所有内容,再取里面的子元素放入变量ch中
  23. var ch = $(data).find("nation").children();
  24. var str = "";
  25. for(var i=0;i<ch.length;i++)
  26. {
  27. //从ch中循环出每一条数据的code与name
  28. var code = $(ch[i]).find("code").text();
  29. var name = $(ch[i]).find("name").text();
  30. str+="<option value='"+code+"'>"+name+"</option>";
  31. }
  32.  
  33. $("#sel").html(str);
  34. }
  35.  
  36. });
  37. });
  38.  
  39. </script>

处理页面:

  1. <?php
  2. include("../DB.class.php");
  3. $db = new DB();
  4. $sql = "select * from Nation";
  5. $attr = $db->Query($sql);
  6. //返回XML数据就要写一个XML文档
  7. /*echo "<?xml version='1.0'?>"; */ //XML文档的头可以不写
  8. echo "<nation>";
  9. foreach($attr as $k=>$v)
  10. {
  11. echo "<shuju{$k}>";
  12. echo "<code>{$v[0]}</code>";
  13. echo "<name>{$v[1]}</name>";
  14. echo "</shuju{$k}>";
  15. }
  16. 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. [原创]超强C#图片上传,加水印,自动生成缩略图源代码

    <%@ Page Language=“C#“ AutoEventWireup=“true“ %> <%@ Import Namespace=“System“ %> <%@ ...

  2. 源代码分析Fragmentd的BackStack管理过程

    1. Fragment基本使用方法 为了管理Activity中的fragments.须要调用Activity中的getFragmentManager()方法.由于FragmentManager的API ...

  3. E - Leading and Trailing 求n^k得前三位数字以及后三位数字,保证一定至少存在六位。

    /** 题目:E - Leading and Trailing 链接:https://vjudge.net/contest/154246#problem/E 题意:求n^k得前三位数字以及后三位数字, ...

  4. 进出口流程 & 报关单据

    出口流程 一. 委托人 1. 需找货运代理公司 2. 向代理公司询问价格 一般为 ALL IN 价格( 空运费+燃油费+战险费 ) 总费用 = ALL IN 价格 * ( 货物公斤数 ) ALL IN ...

  5. 访问JavaBean

    <jsp:useBean> 标签可以在JSP中声明一个JavaBean,然后使用.声明后,JavaBean对象就成了脚本变量,可以通过脚本元素或其他自定义标签来访问.<jsp:use ...

  6. Servlet HTTP 状态码

    HTTP 请求和 HTTP 响应消息的格式是类似的,结构如下: 初始状态行 + 回车换行符(回车+换行) 零个或多个标题行+回车换行符 一个空白行,即回车换行符 一个可选的消息主体,比如文件.查询数据 ...

  7. OpenCV学习笔记十三:opencv_videostab模块

    一,简介: 该库用于视频稳像.

  8. Type Group(类型组)

    在 APAP 程序开发中, 经常需要定义一些常量或变量, 而且可能存在多个程序中需要用到的类似的变量或结构体, SAP 提供了类型组, 允许用户建立一些公用的对象, 允许在不同的程序中调用, 这样不但 ...

  9. 微信公众平台开发:进阶篇(Web App开发入门)

    本文转载至:http://blog.csdn.net/yual365/article/details/16820805  WebApp与Native App有何区别呢? Native App: 1.开 ...

  10. boost::lockfree::stack

    #include <boost/thread/thread.hpp> #include <boost/lockfree/stack.hpp> #include <iost ...