xml 将xml文档以表格的形式输出

前端之家收集整理的这篇文章主要介绍了xml 将xml文档以表格的形式输出前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在此我引用了w3school中的一个demo,我们还是来看看具体的例子吧:

index.html

  1. <!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Strict//EN' 'http://www.w3.org/TR/html4/strict.dtd'>
  2. <html>
  3. <head>
  4. <Meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
  5. <title>insert into title</title>
  6. <script type="text/javascript" src="ajax.js"></script>
  7. </head>
  8. <body>
  9. <div id="copy">
  10. <button onclick="getXmlDoc('index.xml')">Get XmlDoc</button>
  11. </div>
  12. </body>
  13. </html>

ajax.js

  1. var xmlHttp;
  2. function getXMLHttpRequest(){
  3. var xmlHttp=null;
  4. if(window.XMLHttpRequest){
  5. xmlHttp=new XMLHttpRequest();
  6. }else if(window.ActiveXObject){
  7. xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  8. }
  9. return xmlHttp;
  10. }
  11.  
  12. function getXmlDoc(url){
  13. xmlHttp=getXMLHttpRequest();
  14. if(xmlHttp!=null){
  15. xmlHttp.onreadystatechange=stateChanged;
  16. xmlHttp.open("GET",url,true);
  17. xmlHttp.send(null);
  18. }else{
  19. alert("Browser does not Http Request");
  20. return;
  21. }
  22. }
  23.  
  24. function stateChanged(){
  25. if(xmlHttp.readyState!=4) true;
  26. if(xmlHttp.status!=200){
  27. alert("Problem retrieving data");
  28. return;
  29. }
  30. txt="<table border='1'>";
  31. x=xmlHttp.responseXML.documentElement.getElementsByTagName("CD");
  32. for(i=0;i<x.length;i++){
  33. txt=txt+"<tr>";
  34. xx=x[i].getElementsByTagName("TITLE");
  35. {
  36. try{
  37. txt=txt+"<td>"+xx[0].firstChild.nodeValue+"</td>";
  38. }catch(e){
  39. txt=txt+"<td> </td>";
  40. }
  41. }
  42. xx=x[i].getElementsByTagName("ARTIST");
  43. {
  44. try{
  45. txt=txt+"<td>"+xx[0].firstChild.nodeValue+"</td>";
  46. }catch(e){
  47. txt=txt+"<td> </td>";
  48. }
  49. }
  50. txt=txt+"</tr>";
  51. }
  52. txt=txt+"</table>";
  53. document.getElementsById("copy").innerHTML=txt;
  54. }

index.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <CATALOG>
  3. <CD>
  4. <TITLE>Empire Burlesque</TITLE>
  5. <ARTIST>Bob Dylan</ARTIST>
  6. <COUNTRY>USA</COUNTRY>
  7. <COMPANY>Columbia</COMPANY>
  8. <PRICE>10.90</PRICE>
  9. <YEAR>1985</YEAR>
  10. </CD>
  11. <CD>
  12. <TITLE>Hide your heart</TITLE>
  13. <ARTIST>Bonnie Tyler</ARTIST>
  14. <COUNTRY>UK</COUNTRY>
  15. <COMPANY>CBS Records</COMPANY>
  16. <PRICE>9.90</PRICE>
  17. <YEAR>1988</YEAR>
  18. </CD>
  19. <CD>
  20. <TITLE>Greatest Hits</TITLE>
  21. <ARTIST>Dolly Parton</ARTIST>
  22. <COUNTRY>USA</COUNTRY>
  23. <COMPANY>RCA</COMPANY>
  24. <PRICE>9.90</PRICE>
  25. <YEAR>1982</YEAR>
  26. </CD>
  27. <CD>
  28. <TITLE>Still got the blues</TITLE>
  29. <ARTIST>Gary Moore</ARTIST>
  30. <COUNTRY>UK</COUNTRY>
  31. <COMPANY>Virgin records</COMPANY>
  32. <PRICE>10.20</PRICE>
  33. <YEAR>1990</YEAR>
  34. </CD>
  35. <CD>
  36. <TITLE>Eros</TITLE>
  37. <ARTIST>Eros Ramazzotti</ARTIST>
  38. <COUNTRY>EU</COUNTRY>
  39. <COMPANY>BMG</COMPANY>
  40. <PRICE>9.90</PRICE>
  41. <YEAR>1997</YEAR>
  42. </CD>
  43. <CD>
  44. <TITLE>One night only</TITLE>
  45. <ARTIST>Bee Gees</ARTIST>
  46. <COUNTRY>UK</COUNTRY>
  47. <COMPANY>Polydor</COMPANY>
  48. <PRICE>10.90</PRICE>
  49. <YEAR>1998</YEAR>
  50. </CD>
  51. <CD>
  52. <TITLE>Sylvias Mother</TITLE>
  53. <ARTIST>Dr.Hook</ARTIST>
  54. <COUNTRY>UK</COUNTRY>
  55. <COMPANY>CBS</COMPANY>
  56. <PRICE>8.10</PRICE>
  57. <YEAR>1973</YEAR>
  58. </CD>
  59. <CD>
  60. <TITLE>Maggie May</TITLE>
  61. <ARTIST>Rod Stewart</ARTIST>
  62. <COUNTRY>UK</COUNTRY>
  63. <COMPANY>Pickwick</COMPANY>
  64. <PRICE>8.50</PRICE>
  65. <YEAR>1990</YEAR>
  66. </CD>
  67. <CD>
  68. <TITLE>Romanza</TITLE>
  69. <ARTIST>Andrea Bocelli</ARTIST>
  70. <COUNTRY>EU</COUNTRY>
  71. <COMPANY>Polydor</COMPANY>
  72. <PRICE>10.80</PRICE>
  73. <YEAR>1996</YEAR>
  74. </CD>
  75. <CD>
  76. <TITLE>When a man loves a woman</TITLE>
  77. <ARTIST>Percy Sledge</ARTIST>
  78. <COUNTRY>USA</COUNTRY>
  79. <COMPANY>Atlantic</COMPANY>
  80. <PRICE>8.70</PRICE>
  81. <YEAR>1987</YEAR>
  82. </CD>
  83. <CD>
  84. <TITLE>Black angel</TITLE>
  85. <ARTIST>Savage Rose</ARTIST>
  86. <COUNTRY>EU</COUNTRY>
  87. <COMPANY>Mega</COMPANY>
  88. <PRICE>10.90</PRICE>
  89. <YEAR>1995</YEAR>
  90. </CD>
  91. <CD>
  92. <TITLE>1999 Grammy Nominees</TITLE>
  93. <ARTIST>Many</ARTIST>
  94. <COUNTRY>USA</COUNTRY>
  95. <COMPANY>Grammy</COMPANY>
  96. <PRICE>10.20</PRICE>
  97. <YEAR>1999</YEAR>
  98. </CD>
  99. <CD>
  100. <TITLE>For the good times</TITLE>
  101. <ARTIST>Kenny Rogers</ARTIST>
  102. <COUNTRY>UK</COUNTRY>
  103. <COMPANY>Mucik Master</COMPANY>
  104. <PRICE>8.70</PRICE>
  105. <YEAR>1995</YEAR>
  106. </CD>
  107. <CD>
  108. <TITLE>Big Willie style</TITLE>
  109. <ARTIST>Will Smith</ARTIST>
  110. <COUNTRY>USA</COUNTRY>
  111. <COMPANY>Columbia</COMPANY>
  112. <PRICE>9.90</PRICE>
  113. <YEAR>1997</YEAR>
  114. </CD>
  115. <CD>
  116. <TITLE>Tupelo Honey</TITLE>
  117. <ARTIST>Van Morrison</ARTIST>
  118. <COUNTRY>UK</COUNTRY>
  119. <COMPANY>Polydor</COMPANY>
  120. <PRICE>8.20</PRICE>
  121. <YEAR>1971</YEAR>
  122. </CD>
  123. <CD>
  124. <TITLE>The very best of</TITLE>
  125. <ARTIST>Cat Stevens</ARTIST>
  126. <COUNTRY>UK</COUNTRY>
  127. <COMPANY>Island</COMPANY>
  128. <PRICE>8.90</PRICE>
  129. <YEAR>1990</YEAR>
  130. </CD>
  131. <CD>
  132. <TITLE>Stop</TITLE>
  133. <ARTIST>Sam Brown</ARTIST>
  134. <COUNTRY>UK</COUNTRY>
  135. <COMPANY>A and M</COMPANY>
  136. <PRICE>8.90</PRICE>
  137. <YEAR>1988</YEAR>
  138. </CD>
  139. <CD>
  140. <TITLE>Bridge of Spies</TITLE>
  141. <ARTIST>T'Pau</ARTIST>
  142. <COUNTRY>UK</COUNTRY>
  143. <COMPANY>Siren</COMPANY>
  144. <PRICE>7.90</PRICE>
  145. <YEAR>1987</YEAR>
  146. </CD>
  147. <CD>
  148. <TITLE>Private Dancer</TITLE>
  149. <ARTIST>Tina Turner</ARTIST>
  150. <COUNTRY>UK</COUNTRY>
  151. <COMPANY>Capitol</COMPANY>
  152. <PRICE>8.90</PRICE>
  153. <YEAR>1983</YEAR>
  154. </CD>
  155. <CD>
  156. <TITLE>Midt om natten</TITLE>
  157. <ARTIST>Kim Larsen</ARTIST>
  158. <COUNTRY>EU</COUNTRY>
  159. <COMPANY>Medley</COMPANY>
  160. <PRICE>7.80</PRICE>
  161. <YEAR>1983</YEAR>
  162. </CD>
  163. <CD>
  164. <TITLE>Pavarotti Gala Concert</TITLE>
  165. <ARTIST>Luciano Pavarotti</ARTIST>
  166. <COUNTRY>UK</COUNTRY>
  167. <COMPANY>DECCA</COMPANY>
  168. <PRICE>9.90</PRICE>
  169. <YEAR>1991</YEAR>
  170. </CD>
  171. <CD>
  172. <TITLE>The dock of the bay</TITLE>
  173. <ARTIST>Otis Redding</ARTIST>
  174. <COUNTRY>USA</COUNTRY>
  175. <COMPANY>Atlantic</COMPANY>
  176. <PRICE>7.90</PRICE>
  177. <YEAR>1987</YEAR>
  178. </CD>
  179. <CD>
  180. <TITLE>Picture book</TITLE>
  181. <ARTIST>Simply Red</ARTIST>
  182. <COUNTRY>EU</COUNTRY>
  183. <COMPANY>Elektra</COMPANY>
  184. <PRICE>7.20</PRICE>
  185. <YEAR>1985</YEAR>
  186. </CD>
  187. <CD>
  188. <TITLE>Red</TITLE>
  189. <ARTIST>The Communards</ARTIST>
  190. <COUNTRY>UK</COUNTRY>
  191. <COMPANY>London</COMPANY>
  192. <PRICE>7.80</PRICE>
  193. <YEAR>1987</YEAR>
  194. </CD>
  195. <CD>
  196. <TITLE>Unchain my heart</TITLE>
  197. <ARTIST>Joe Cocker</ARTIST>
  198. <COUNTRY>USA</COUNTRY>
  199. <COMPANY>EMI</COMPANY>
  200. <PRICE>8.20</PRICE>
  201. <YEAR>1987</YEAR>
  202. </CD>
  203. </CATALOG>

注:index.html index.xml ajax.js 在同一根目录下。

猜你在找的XML相关文章