首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

怎么在Firefox下正确显示这个html

2012-04-08 
如何在Firefox下正确显示这个htmlIE下可以显示,Firefox下不行,请教XMLFile1.xml?xmlversion 1.0 encod

如何在Firefox下正确显示这个html
IE下可以显示,Firefox下不行,请教
XMLFile1.xml
<?xml   version= "1.0 "   encoding= "utf-8 "   ?>
<?xml-stylesheet   type= "text/xsl "   href= "table_cs.xsl "   ?>
<学生信息>
<个人信息> <姓名> 张三 </姓名> <年龄> 27 </年龄> <备注> 来自江苏 </备注> </个人信息>
<个人信息> <姓名> 李四 </姓名> <年龄> 25 </年龄> <备注> 来自北京 </备注> </个人信息>
</学生信息>


Xsltfile.xsl

<?xml   version= "1.0 "   encoding= "UTF-8 "   ?>
<xsl:stylesheet   version= "1.0 "   xmlns:xsl= "http://www.w3.org/1999/XSL/Transform ">

<xsl:template   match= "/ ">
<html> <head> <title> 学生信息 </title> </head>
<body> <table   border= "1 "> <tr   bgcolor= "lightgreen "> <td> Name </td> <td> Age </td>
<td> Memo </td> </tr>
<xsl:apply-templates   select= "学生信息 "   />
</table> </body> </html>
</xsl:template>

<xsl:template   match= "学生信息 ">
<xsl:for-each   select= "个人信息 ">
<tr   bgcolor= "white "> <td> <xsl:value-of   select= "姓名 "> </xsl:value-of> </td>
<td> <xsl:value-of   select= "年龄 "   /> </td>
<td> <xsl:value-of   select= "备注 "   /> </td>
</tr>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>


xxl.html

<!DOCTYPE   HTML   PUBLIC   "-//W3C//DTD   HTML   4.01   Transitional//EN ">
<html>

  <head>
<title> </title>
<meta   http-equiv= "Content-Type "   content= "text/html;   charset=gb2312 ">
</head>

<style>
BODY{font:bold   12pt   Times   New   Roman;   background-color= "#C0C0C0 "}
</style>


<SCRIPT   language= "JavaScript ">
function   change()
{
var   xmldom   =   new   ActiveXObject( "Microsoft.XMLDOM ");
xmldom.load( "XMLFile1.xml ");
var   xsldom   =   new   ActiveXObject( "Microsoft.XMLDOM ");
xsldom.load( "Xsltfile.xsl ");
document.write(xmldom.transformNode(xsldom));
}
</SCRIPT>
<body>
<input   name= "button0 "   type= "button "   value= "显示转换文件 "     onclick= "change() "> </input>
</body>
</html>


[解决办法]
<SCRIPT language= "JavaScript ">
function change()
{
var xmldom = new ActiveXObject( "Microsoft.XMLDOM ");
xmldom.load( "XMLFile1.xml ");
var xsldom = new ActiveXObject( "Microsoft.XMLDOM ");
xsldom.load( "Xsltfile.xsl ");
document.write(xmldom.transformNode(xsldom));
}
</SCRIPT>

var xmldom = new ActiveXObject( "Microsoft.XMLDOM ");//这个解析器只能在ie中使用啊,
在ff中要这样写var xmldom = document.implementation.createDocument( ' ', ' ',null);
另外transformNode的函数在ff中也是不一样的O.o


我写了一个这样的对象在ff和ie中都可以使用,你可以参考,也可以直接用

http://www.hua2r.com/blog/12f06a1e0779dcb0d5cb64aee21dcbfb.html
其中的 function DOMDocument() 看看使用方法
[解决办法]
在FF下创建xmlhttprequest为:
var xmlhttp = new new XMLHttpRequest();
[解决办法]
知识是学习的,
导入下面网页里面提供的js
http://www.hua2r.com/blog/12f06a1e0779dcb0d5cb64aee21dcbfb.html

这样的话你就可以这样写:

<script language= "javascript " src= "http://www.hua2r.com/js/Oo.js "> </script>
<script language= "javascript ">
var domDoc = new DOMDocument();
domDoc.load( 'XMLFile1.xml ');
domDoc.loadXSL( 'Xsltfile.xsl ');
document.write(domDoc.transform());
</script>

原理我已经说过了,这个是我封装的。
[解决办法]
你把他的JS 下载下来,包含到你的页面就OK了
也就是 hejunbin 的JS,你说的transformNode也就是他的transform(),自己定义的
好久没有来,都改版了..

热点排行