1、写上正确的xml的dtd定义后再试试
2、我这里有一个函数,久经考验,你可以用用:
////////////////////////////////////////////////////////////
//载入指定的xml文档,并返回
//docName:路径+文件名
function loadXMLDocument(docName)
{
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.validateOnParse = false;
xmldoc.load(docName);
if(xmldoc.parseError.errorCode != 0) {
alert(showError(xmldoc));
return(false);
}
return(xmldoc);
}
////////////////////////////////////////////////////////////
//载入指定的xsl文档,并返回
//docName:路径+文件名
function loadXSLDocument(docName)
{
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.load(docName);
if(xmldoc.parseError.errorCode != 0) {
alert(showError(xmldoc));
return(false);
}
return(xmldoc);
}
/////////////////////////////////////////////////////////////////////
//生成指定的xml文件的出错信息
function showError(xmldoc)
{
var strError = new String;
var err = xmldoc.parseError;
strError = 'Error!\n' +
'file url: '+err.url +' \n'+
'line no.:'+err.line +'\n'+
'char: '+ err.linepos + '\n' +
'source: '+err.srcText+'\n'+
'code: '+err.errorCode+'\n'+
'description: '+err.reason+'\n';
return(strError);
}
2、我这里有一个函数,久经考验,你可以用用:
////////////////////////////////////////////////////////////
//载入指定的xml文档,并返回
//docName:路径+文件名
function loadXMLDocument(docName)
{
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.validateOnParse = false;
xmldoc.load(docName);
if(xmldoc.parseError.errorCode != 0) {
alert(showError(xmldoc));
return(false);
}
return(xmldoc);
}
////////////////////////////////////////////////////////////
//载入指定的xsl文档,并返回
//docName:路径+文件名
function loadXSLDocument(docName)
{
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.load(docName);
if(xmldoc.parseError.errorCode != 0) {
alert(showError(xmldoc));
return(false);
}
return(xmldoc);
}
/////////////////////////////////////////////////////////////////////
//生成指定的xml文件的出错信息
function showError(xmldoc)
{
var strError = new String;
var err = xmldoc.parseError;
strError = 'Error!\n' +
'file url: '+err.url +' \n'+
'line no.:'+err.line +'\n'+
'char: '+ err.linepos + '\n' +
'source: '+err.srcText+'\n'+
'code: '+err.errorCode+'\n'+
'description: '+err.reason+'\n';
return(strError);
}
解决方案 »
- --------------------------------------------下面代码有点看不懂
- 关于JS打开新窗口
- 只用html+javascript能连接数据库sqlserver吗?
- VBscript 里 chr() 与 chrB()到底什么区别???我快疯了!!!
- JavaScript将在哪一年被淘汰?
- 正则表达式中!斜杠的替换问题
- javascript循环
- 给定起始行、起始列、结束行、结束列不用循环如何得到表格给定区域outerHTML
- 这个网站好奇怪。显示明明有文本框,却找不到它的名称?哪位看看?
- 如何用语句选中<select multiple>中的所有项?先来先得分
- 用 var 定义的变量,在整个页面都能使用吗?
- 如何 在一张图片上面拖动一个层??
<body>
<div id="showXML"></div>
<script language="javascript">
………………
函数
………………
var mdoc = loadXMLDocument("你的路径+文件名");
var sdoc = loadXSLDocument("你的路径+文件名");
showXML.innerHTML = mdoc.transformNode(sdoc);
</script>
</body>
{
var filename = "/expert/topic/"+Math.floor((parseInt(id)-1)/1000).toString()+"/"+id+".xml"
//alert(filename);
var csdnxml=new ActiveXObject("Microsoft.XMLDOM");
var csdnxsl=new ActiveXObject("Microsoft.XMLDOM");
csdnxml.async=false;
csdnxsl.async=false;
try
{
//alert("11");
csdnxml.load(filename);
if(csdnxml.parseError.errorCode)
{
alert(filename+"解析错误\n"+csdnxml.parseError.reason);
}
csdnxsl.load("/expert/xsl/100.xsl");
if(csdnxsl.parseError.errorCode)
{
alert("解析错误\n"+csdnxsl.parseError.reason);
}
var html=csdnxml.transformNode(csdnxsl);
//alert(html);
}
catch(x)
{
alert("无法保存!!")
return;
} var winSave = window.open();
winSave.document.open ("text/html","gb2312");
winSave.document.write (html);
winSave.document.execCommand ("SaveAs",true,"csdn_"+id+".htm");
winSave.close();
}