Ajax-数据格式-xml,json

xml demo

testDataXml

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>test html data</title>
 8 <script type="text/javascript">
 9     window.onload=function(){
10         var aNodes=document.getElementsByTagName("a");
11         for(var i=0;i<aNodes.length;i++)
12         {
13             aNodes[i].onclick=function()
14             {
15                 var request=new XMLHttpRequest();
16                 //4.准备发送请求的数url,加上时间戳
17                 var url=this.href;
18                 var method="GET";
19                 //5.调用XMLHttpRequest的open方法
20                 request.open(method,url);
21                 //6.调用XMLHttpRequest的send方法
22                 request.send(null);
23                 request.onreadystatechange=function(){
24                     if(request.readyState==4)
25                     {
26                         if(request.status==200||request.status==304)
27                             {
28                             //1.目标格式为XML文件,用request.responseXML获取
29                             var result=request.responseXML;
30                             //2.结果不能址接使用,必须先创建对应的节点,再把节点加入到#details中
31                             /***
32                             目标格式为:
33                             <h2><a href="mailto:[email protected]">Jeremy Budd</a></h2>
34                             <a href="http://andybudd.com/">http://JeremyBudd.com</a>
35                            ***/
36                             var name=result.getElementsByTagName("name")[0].firstChild.nodeValue;
37                             var website=result.getElementsByTagName("website")[0].firstChild.nodeValue;
38                             var email=result.getElementsByTagName("email")[0].firstChild.nodeValue;
39                             //document.getElementById("details").innerHTML=request.responseText;
40
41                             var aNode=document.createElement("a");
42                             aNode.appendChild(document.createTextNode(name));
43                             aNode.href="mailto:"+email;
44
45                             var h2Node=document.createElement("h2");
46                             h2Node.appendChild(aNode);
47
48                             var aNode2=document.createElement("a");
49                             aNode2.appendChild(document.createTextNode(website));
50                             aNode2.href=website;
51
52                             var detailNode=document.getElementById("details");
53                             detailNode.innerHTML="";
54                             detailNode.appendChild(h2Node);
55                             detailNode.appendChild(aNode2);
56
57                             }
58                     }
59                 }
60                 return false;
61             }
62         }
63     }
64 </script>
65 </head>
66 <body>
67 <h1>People</h1>
68 <ul>
69     <li><a href="files/andy.xml">Andy</a></li>
70     <li><a href="files/richard.xml">Richard</a></li>
71     <li><a href="files/jeremy.xml">Jeremy</a></li>
72 </ul>
73 <div id="details"></div>
74 </body>
75 </html>

1 <?xml version="1.0" encoding="UTF-8"?>
2 <details>
3     <name>Richard Bubb</name>
4     <website>http://adactio.com/</website>
5     <email>[email protected]</email>
6 </details>

Richard

Json 示例

 1 <script type="text/javascript">
 2 var jsonObject={
 3         "name":"atgugu",
 4         "age":34,
 5         "address":{"city":"Beijing","school":"bjtu"},
 6         "teaching":function(){
 7             alert("javaee,python.....");
 8         }
 9 };
10 alert(jsonObject.name);
11 alert(jsonObject.address.city);
12 alert(jsonObject.teaching());
13 </script>

json示例

Json Demo

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>test json data</title>
 8 <script type="text/javascript">
 9 /*
10 var jsonObject={
11         "name":"atgugu",
12         "age":34,
13         "address":{"city":"Beijing","school":"bjtu"},
14         "teaching":function(){
15             alert("javaee,python.....");
16         }
17 };
18 alert(jsonObject.name);
19 alert(jsonObject.address.city);
20 alert(jsonObject.teaching());
21 */
22     window.onload=function(){
23         var aNodes=document.getElementsByTagName("a");
24         for(var i=0;i<aNodes.length;i++)
25         {
26             aNodes[i].onclick=function()
27             {
28                 var request=new XMLHttpRequest();
29                 //4.准备发送请求的数url,加上时间戳
30                 var url=this.href;
31                 var method="GET";
32                 //5.调用XMLHttpRequest的open方法
33                 request.open(method,url);
34                 //6.调用XMLHttpRequest的send方法
35                 request.send(null);
36                 request.onreadystatechange=function(){
37                     if(request.readyState==4)
38                     {
39                         if(request.status==200||request.status==304)
40                             {
41                             //1.目标格式为XML文件,用request.responseXML获取
42                             var jsonresult=request.responseText;
43                             var result=eval("("+ jsonresult + ")");
44                             //2.结果不能址接使用,必须先创建对应的节点,再把节点加入到#details中
45                             /***
46                             目标格式为:
47                             <h2><a href="mailto:[email protected]">Jeremy Budd</a></h2>
48                             <a href="http://andybudd.com/">http://JeremyBudd.com</a>
49                            ***/
50                             var name=result.person.name;
51                             var website=result.person.website;
52                             var email=result.person.email;
53                             //document.getElementById("details").innerHTML=request.responseText;
54
55                             var aNode=document.createElement("a");
56                             aNode.appendChild(document.createTextNode(name));
57                             aNode.href="mailto:"+email;
58
59                             var h2Node=document.createElement("h2");
60                             h2Node.appendChild(aNode);
61
62                             var aNode2=document.createElement("a");
63                             aNode2.appendChild(document.createTextNode(website));
64                             aNode2.href=website;
65
66                             var detailNode=document.getElementById("details");
67                             detailNode.innerHTML="";
68                             detailNode.appendChild(h2Node);
69                             detailNode.appendChild(aNode2);
70
71                             }
72                     }
73                 }
74                 return false;
75             }
76         }
77     }
78 </script>
79 </head>
80 <body>
81 <h1>People</h1>
82 <ul>
83     <li><a href="files/andy.js">Andy</a></li>
84     <li><a href="files/richard.js">Richard</a></li>
85     <li><a href="files/jeremy.js">Jeremy</a></li>
86 </ul>
87 <div id="details"></div>
88 </body>
89 </html>

testDatajson.jsp

1 {
2     "person":{
3     "name":"Richard Bubb",
4     "website":"http://adactio.com/",
5     "email":"[email protected]"
6         }
7 }

richard.js

时间: 2024-10-29 08:12:28

Ajax-数据格式-xml,json的相关文章

[ajax 学习笔记] json数据格式

之前写过ajax传送数据可以用普通文本和XML两种格式.这里记一下json数据格式. json:javascript object notation. 之前分析过,用文本和XML传送数据各有优劣.而json可以轻松地将javascript对象转换成可以随时发送的数据. 一个json数据例子: var people = { "programmers": [ { "firstName": "Brett", "lastName":&

Ajax调用返回json,xml数据类型(0517--pm)

一.返回Json型数据: 1.主页面 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 <met

jQuery ajax读取本地json文件

json文件 { "first":[ {"name":"张三","sex":"男"}, {"name":"李四","sex":"男"}, {"name":"王武","sex":"男"}, {"name":"李梅"

SpringMVC 避免IE执行AJAX时,返回JSON出现下载文件

<?xml version="1.0" encoding="UTF-8"?> <!-- SpringMVC配置文件 --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3

string xml json格式区别

string 是一种最普通的储存一串字符的数据格式 xml 是一种可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据.是一种可扩展标记语言.总结来说,xml可以把String字符串打上标签归类,具有比string格式更高的可读性,传输性,更适合互联网的数据传输 json 是轻量级数据交换格式.json是与xml类似的结构化数据格式,与xml相比json是更简易的语法

XML &amp;&amp; Json

一.XML XML即可扩展标记语言(eXtensible Markup Language).标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等.如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性.XML是从SGML中简化修改出来的.它主要用到的有XML.XSL和XPath等. 上面这段是对XML的一个基本定义,一个被广泛接受的说明.简单说,XML就是一种数据的描述语言,虽然它是

jquery通过ajax方法获取json数据不执行success

1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准写法,导致总是执行error回调方法 解决方案:使json格式务必符合下述3个标准写法:      1)键名称:用双引号括起:    2)字符串:用双引号括起:    3)数字,布尔值不需要使用双引号括起 : 注意:一定是双括号! 2.jQuery中ajax使用json数据类型总是跳过success

iOS开发笔记3:XML/JSON数据解析

这篇主要总结在iOS开发中XML/JSON数据解析过程用到的方法.XML数据解析主要使用SAX方式的NSXMLParser以及DOM方式的GDataXML,JSON数据解析主要使用NSJSONSerialization. 1.XML解析之NSXMLParser NSXMLParser是iOS原生的XML解析方式,采用SAX方式进行解析,特点是解析的时候从根元素开始,按顺序依次对每一个元素进行解析. 以下图所示XML文档为例进行解析 (1)首先是实例化一个NSXMLParser,设置代理监听解析过

UI学习笔记---第十六天XML JSON解析

一.解析的基本概念 从事先规定好的格式中提取数据 解析的前提:提前约定好格式.数据提供方按照格式提供数据,数据方按照格式获取数据 常见解析方式XML解析JSON解析 二.XML:可扩展标记语言 XML数据格式的功能:数据交换 web服务  内容管理  用作配置文件 一对标签称为一个节点  节点可以包含节点   没有子节点叫叶子节点  只有一个根节点  节点可以相互嵌套 三.进行XML解析时使用到的SAX工具 SAX:Simple API for XML  基于事件驱动的解析方式,逐行解析数据.(

XML+JSON面试题都在这里

XML+JSON常见面试题 什么是JSON和XML 什么是JSON和XML JSON:JavaScript Object Notation [JavaScript 对象表示法]. XML:extensiable markup language 被称作可扩展标记语言 JSON和XML都是数据交换语言,完全独立于任何程序语言的文本格式. JSON与XML区别是什么? 有什么共同点 JSON与XML区别是什么? 有什么共同点 共同点: 用于RPC远程调用数据交换格式 RPC远程调用简单理解:调用本地服