Ajax获取XML数据--原生JavaScript实现
2017-11-29 17:05
706 查看
获取XML数据的时候,要注意在服务器端要在http协议头部中指定content-type为text/xml,否则,客户端请求之后得到的是一个普通文本(text),即使服务器端提供的是一个标准XML格式的数据。客户端在接收响应的时候,使用xhr.responseXML,这个时候,只能辨认XML,而不能处理普通文本。
先看index.html
index.php
先看index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <input type="button" name="button" value="点击出诗" onclick="fetch()"> <div id="msg"></div> </body> <script> function fetch(){ var div=document.getElementById("msg"); var input=document.getElementsByName("button")[0]; var xhr=new XMLHttpRequest(); xhr.onreadystatechange=function(){ if(this.readyState==4 && this.status == 200){ alert(typeof this.responseXML); div.innerHTML=this.responseXML.getElementsByTagName('title')[0].childNodes[0].nodeValue; } } xhr.open("GET","index.php","true"); xhr.send(null); } </script> </html>
index.php
<?php header('content-type: text/xml; charset=utf-8'); ?> <?xml version='1.0' encoding='utf-8'?> <book> <poetry> <title>登岳阳楼</title> <author>白居易</author> <content>昔闻洞庭水,今上岳阳楼。</content> </poetry> <poetry> <title>旅宿</title> <author>杜牧</author> <content>旅馆无良伴,凝情自悄然。</content> </poetry> </book>
相关文章推荐
- 原生js如何实现柱状图以及原生js柱状图结合ajax循环动态数据_JavaScript_柱状图(原生JavaScript做的柱状图)(03)_ajax获取数据
- 基于对象的JavaScript实现无刷新页面发送和获取数据Ajax.js
- 使用原生JavaScriptAjax以及jQuery的Ajax结合SpringMVC发送和获取json数据
- 用JavaScript与WebService实现网页部分数据XML传送
- AjaxPro.NET实现TextBox智能获取服务端数据功能(Asp.net 2.0)(示例代码下载)
- AjaxPro.NET实现TextBox智能获取服务端数据功能(Asp.net 2.0)(示例代码下载)
- Ajax实现无刷新的获取数据并绑定到GridView,以及无刷新更新数据[转]
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- javascript 获取多条数据(模拟ajax获取数据)
- AjaxPro.NET实现TextBox智能获取服务端数据功能(Asp.net 2.0)(示例代码下载)
- javascript 获取多条数据(模拟ajax获取数据)
- JavaScript中获取XML数据流中数据节点的方法
- 动态创建表格js文件,javascript,Ajax,DHTML动态实现表格的创建,动态读取XML中的文件,读取dom节点的例子。
- [导入]AjaxPro.NET实现TextBox智能获取服务端数据功能(Asp.net 2.0)(示例代码下载)
- javascript+xml+xmlHttp 实现远程自动更新网站ACCESS数据
- AJAX和SOAP——异步数据和XML获取
- AjaxPro.NET实现TextBox智能获取服务端数据功能(Asp.net 2.0)(示例代码下载)
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- 用JavaScript与WebService实现网页部分数据XML传送