XML 文件内容如下--------------------------------------------》<?xml version="1.0" encoding="GBK"?>
-<RESULTS>
  -<ROW>
    -<COLUMN NAME="INDEX_NAME">
      <![CDATA[APPLY$_CONF_HDLR_COLUMNS_UNQ1]]>
     </COLUMN>
    -<COLUMN NAME="INDEX_TYPE">
      <![CDATA[NORMAL]]>
     </COLUMN>
    -<COLUMN NAME="TABLE_OWNER">
      <![CDATA[SYS]]>
     </COLUMN>
  </ROW>
  -<ROW>
    -<COLUMN NAME="INDEX_NAME">
      <![CDATA[APPLY$_CONF_HDLR_COLUMNS_UNQ2]]>
     </COLUMN>
    -<COLUMN NAME="INDEX_TYPE">
      <![CDATA[NORMAL]]>
     </COLUMN>
    -<COLUMN NAME="TABLE_OWNER">
      <![CDATA[SYS]]>
     </COLUMN>
  </ROW>
</RESULTS>请问怎么在HTML文件里将XML信息以表格形式展现出来呢?

解决方案 »

  1.   

    为什么不xml + xslt直接搞定。
      

  2.   

    因为不想弄复杂了,只想简单点 一个HTML文件一个XML文件直接能读数据就行。看着你也是版主级别的大神,高抬贵手赐教几行代码吧。
      

  3.   

        var xhr = window.ActiveXObject ? new ActiveXObject("microsoft.xmlhttp") : new XMLHttpRequest()
        ,dom;
        xhr.open("get", "x.xml", false);
        xhr.send(null);
        if (0 == xhr.status || 200 == xhr.status) {
            if (0 == xhr.status && document.all) {//IE浏览器本地浏览无法生成XMLDOM,所以需要重新加载一下
                dom = new ActiveXObject("microsoft.xmldom");
                dom.loadXML(xhr.responseText);
            }
            else dom = xhr.responseXML;
            var row = dom.getElementsByTagName('ROW'), cols;
            function collectText(ns) {//防止ff等w3c浏览器空白节点问题写的
                var s = '';
                for (var i = 0, j = ns.length; i < j; i++) s += ns[i].nodeValue;
                return s;
            }
            document.write('<table border="1">');
            for (var i = 0, j = row.length; i < j; i++) {
                document.write('<tr>');
                cols = row[i].getElementsByTagName('COLUMN');
                document.write('<td>' + collectText(cols[0].childNodes) + '</td><td>' + collectText(cols[1].childNodes) + '</td><td>' + collectText(cols[2].childNodes) + '</td>');
                document.write('</tr>');
            }
            document.write('</table>');
        }
        else alert('出错了,检查xml文件路径对不!');
      

  4.   

    就是用ajax请求xml文件获取xmldom而已,然后通过getElementsByTagName遍历节点,需要注意的就是空白节点在firefox等w3c浏览器下也算一个节点,所以特别写了一个函数来遍历文本节点