我想使用 firebug 来调试并帮助快速解决一些 XSLT 布局问题,但我无法获得以下代码来在 Firefox 中执行和显示客户端 XSLT(在 IE 中一切正常):
$().ready(function() {
var oXMLHTTP
var oXSLT
if ($.browser.mozilla){
oXMLHTTP = document.implementation.createDocument("","",null);
oXSLT = document.implementation.createDocument("","",null);
}else{
oXMLHTTP = new ActiveXObject("Microsoft.XMLDOM");
oXSLT = new ActiveXObject("Microsoft.XMLDOM");
}
oXMLHTTP.async = false;
oXSLT.async = false;
oXSLT.load('Layout.xslt');
var sURL = "somepage"
/**/
$.get(sURL,function(data){
var sTranformedXML = "";
if ($.browser.mozilla){
oXMLHTTP.load(data);
var xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(oXSLT);
var mDoc = document.implementation.createDocument("","",null);
sTranformedXML = xsltProcessor.transformToFragment(oXMLHTTP,mDoc);
}else{
oXMLHTTP.loadXML(data);
sTranformedXML = oXMLHTTP.transformNode(oXSLT)
}
$("#main").html(sTranformedXML);
$("#tbl_Not Grouped").insertAfter("tbl_Social Sciences");
})// $.get
})
这里有什么我忽略的地方吗?
我真的只需要 Firefox 代码测试。所以,它不需要很漂亮。
最佳答案
众所周知,Gecko 的 XSL-T 实现会错误地处理默认命名空间。尝试在 XML 文档中为元素添加前缀和/或在 XSL 文档中为 XPath 查询中的元素添加前缀(不要忘记绑定(bind)新前缀)
关于javascript - mozilla 客户端 XSLT 不显示。 (也使用 jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/403351/