xml demo

testDataXml

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test html data</title>
<script type="text/javascript">
window.onload=function(){
var aNodes=document.getElementsByTagName("a");
for(var i=0;i<aNodes.length;i++)
{
aNodes[i].onclick=function()
{
var request=new XMLHttpRequest();
//4.准备发送请求的数url,加上时间戳
var url=this.href;
var method="GET";
//5.调用XMLHttpRequest的open方法
request.open(method,url);
//6.调用XMLHttpRequest的send方法
request.send(null);
request.onreadystatechange=function(){
if(request.readyState==4)
{
if(request.status==200||request.status==304)
{
//1.目标格式为XML文件,用request.responseXML获取
var result=request.responseXML;
//2.结果不能址接使用,必须先创建对应的节点,再把节点加入到#details中
/***
目标格式为:
<h2><a href="mailto:andy@clearleft.com">Jeremy Budd</a></h2>
<a href="http://andybudd.com/">http://JeremyBudd.com</a>
***/
var name=result.getElementsByTagName("name")[0].firstChild.nodeValue;
var website=result.getElementsByTagName("website")[0].firstChild.nodeValue;
var email=result.getElementsByTagName("email")[0].firstChild.nodeValue;
//document.getElementById("details").innerHTML=request.responseText; var aNode=document.createElement("a");
aNode.appendChild(document.createTextNode(name));
aNode.href="mailto:"+email; var h2Node=document.createElement("h2");
h2Node.appendChild(aNode); var aNode2=document.createElement("a");
aNode2.appendChild(document.createTextNode(website));
aNode2.href=website; var detailNode=document.getElementById("details");
detailNode.innerHTML="";
detailNode.appendChild(h2Node);
detailNode.appendChild(aNode2); }
}
}
return false;
}
}
}
</script>
</head>
<body>
<h1>People</h1>
<ul>
<li><a href="files/andy.xml">Andy</a></li>
<li><a href="files/richard.xml">Richard</a></li>
<li><a href="files/jeremy.xml">Jeremy</a></li>
</ul>
<div id="details"></div>
</body>
</html>

 <?xml version="1.0" encoding="UTF-8"?>
<details>
<name>Richard Bubb</name>
<website>http://adactio.com/</website>
<email>richard@sohu.com</email>
</details>

Richard

Json 示例

 <script type="text/javascript">
var jsonObject={
"name":"atgugu",
"age":34,
"address":{"city":"Beijing","school":"bjtu"},
"teaching":function(){
alert("javaee,python.....");
}
};
alert(jsonObject.name);
alert(jsonObject.address.city);
alert(jsonObject.teaching());
</script>

json示例

Json Demo

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test json data</title>
<script type="text/javascript">
/*
var jsonObject={
"name":"atgugu",
"age":34,
"address":{"city":"Beijing","school":"bjtu"},
"teaching":function(){
alert("javaee,python.....");
}
};
alert(jsonObject.name);
alert(jsonObject.address.city);
alert(jsonObject.teaching());
*/
window.onload=function(){
var aNodes=document.getElementsByTagName("a");
for(var i=0;i<aNodes.length;i++)
{
aNodes[i].onclick=function()
{
var request=new XMLHttpRequest();
//4.准备发送请求的数url,加上时间戳
var url=this.href;
var method="GET";
//5.调用XMLHttpRequest的open方法
request.open(method,url);
//6.调用XMLHttpRequest的send方法
request.send(null);
request.onreadystatechange=function(){
if(request.readyState==4)
{
if(request.status==200||request.status==304)
{
//1.目标格式为XML文件,用request.responseXML获取
var jsonresult=request.responseText;
var result=eval("("+ jsonresult + ")");
//2.结果不能址接使用,必须先创建对应的节点,再把节点加入到#details中
/***
目标格式为:
<h2><a href="mailto:andy@clearleft.com">Jeremy Budd</a></h2>
<a href="http://andybudd.com/">http://JeremyBudd.com</a>
***/
var name=result.person.name;
var website=result.person.website;
var email=result.person.email;
//document.getElementById("details").innerHTML=request.responseText; var aNode=document.createElement("a");
aNode.appendChild(document.createTextNode(name));
aNode.href="mailto:"+email; var h2Node=document.createElement("h2");
h2Node.appendChild(aNode); var aNode2=document.createElement("a");
aNode2.appendChild(document.createTextNode(website));
aNode2.href=website; var detailNode=document.getElementById("details");
detailNode.innerHTML="";
detailNode.appendChild(h2Node);
detailNode.appendChild(aNode2); }
}
}
return false;
}
}
}
</script>
</head>
<body>
<h1>People</h1>
<ul>
<li><a href="files/andy.js">Andy</a></li>
<li><a href="files/richard.js">Richard</a></li>
<li><a href="files/jeremy.js">Jeremy</a></li>
</ul>
<div id="details"></div>
</body>
</html>

testDatajson.jsp

 {
"person":{
"name":"Richard Bubb",
"website":"http://adactio.com/",
"email":"Richard@sohu.com"
}
}

richard.js

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

  1. Ajax中XML和JSON格式的优劣比较

    刚做完一个小的使用Ajax的项目.整个小项目使用JavaScript做客户端,使用PHP做服务器端.利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式.做完后基本做一个简单 ...

  2. 一、Ajax 二、JSON数据格式 三、Ajax+Jquery 四、分页的实现

    一.Ajax概述###<1>概述 ###<2>组成 以XMLHttpRequest为核心,发送Ajax请求和接收处理结果 以javascript为语言基础 以XML/JSON作 ...

  3. Ajax返回类型JSON,XML

    Ajax的三种返回类型 **一.TEXT *二.JSON 数据显示页面代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...

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

    一.返回Json型数据: 1.主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  5. 异步请求Ajax(取得json数据)

    异步请求Ajax 没有学习Ajax之前请求数据的时候都是整个页面全部刷新了一次,也就是每次请求都会重新请求所有的资源.但是在很多时候不需要页面全部刷新,仅仅是需要页面的局部数据刷新即可,此时需要发送异 ...

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

    这篇主要总结在iOS开发中XML/JSON数据解析过程用到的方法.XML数据解析主要使用SAX方式的NSXMLParser以及DOM方式的GDataXML,JSON数据解析主要使用NSJSONSeri ...

  7. string xml json格式区别

    string 是一种最普通的储存一串字符的数据格式 xml 是一种可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 它非常适合万维网传输,提供统一的方 ...

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

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

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

    <?xml version="1.0" encoding="UTF-8"?> <!-- SpringMVC配置文件 --> <be ...

  10. iOS基础 - XML & JSON

    一.HTML & XML HTML 是用来描述网页的一种语言 HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记 ...

随机推荐

  1. iPhone Push消息全攻略.1

    要做一个iPhone Push消息的需求,从简单test的开始. 1.先添加一个app ID 2.点击Edit来配置push服务. 3.生成两个证书,一个用于开发,一个用于发布. 4.按下图操作创建一 ...

  2. PostgreSQL的 initdb 源代码分析之四

    继续分析: if (pwprompt && pwfilename) { fprintf(stderr, _("%s: password prompt and password ...

  3. 配置文件struts2Struts2配置文件模块化包含(include)与action总结

    本文是一篇关于配置文件struts2的帖子 <include>标签 当Struts配置文件比较多,需要模块化分别或分开成为多个配置文件时,这个功能比较好. 则需要使用<include ...

  4. delphi res 字符串资源

    delphi res 字符串资源 (2011/12/10 19:19:36) //res 字符串资源 //rc 文件:StringTablebegin0 "AAAA"1 " ...

  5. delphi Caption 垂直显示标签文本

    //垂直显示标签文本 Label1.Caption:='垂'+#13+'直'+#13+'显'+#13+'示';//使用相同的方法,我们也可以制作垂直显示的提示(Hint):button1.Hint:= ...

  6. 关于IE8中使用Jquery load方法无法正常加载页面

    最近发现,在IE8中使用Jquery load方法时无法正常加载页面,页面显示空白,没有加载.调试发现,页面多了一个</div>标签,但在FF和CH下表现正常.希望能给遇到同样问题的码农有 ...

  7. replace和insert的语句插入(转)

    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句 Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) valu ...

  8. [原 -> 砖] C# IEnumerable<T>泛型取值

    为什么要写这个?因为发现,很多人在读取泛型集合中Item的值时,使用的方法是 item.GetType().GetField("xxxxx").GetValue() 或类似的写法. ...

  9. Linux系统如何平滑生效NAT-BUGFIX

    在< Linux系统如何平滑生效NAT>中,代码有两处问题.这只是目前发现的,没有发现的还有很多很多,这就是我为何不一开始把代码搞复杂的原因. 1.一个bug附带一个优化: 注意以下的代码 ...

  10. Redis 服务器

    Redis 服务器命令主要是用于管理 redis 服务. 实例 以下实例演示了如何获取 redis 服务器的统计信息: redis 127.0.0.1:6379> INFO # Server r ...