Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE11的XSl和XML转换_Javascript_Java_Xml_Xslt - Fatal编程技术网

Javascript IE11的XSl和XML转换

Javascript IE11的XSl和XML转换,javascript,java,xml,xslt,Javascript,Java,Xml,Xslt,此代码在IE5中工作,但在IE11中不工作 JSP代码: function doTranslate(th,_th,repName,_id){ var trans= XmlXslXform(savRepXsl,_th,'reportName',repName); document.daily_report.criteria_Id.value=_id; try{ lastRow.style.background="#FAFAFA";

此代码在IE5中工作,但在IE11中不工作

JSP代码:

function doTranslate(th,_th,repName,_id){

    var trans= XmlXslXform(savRepXsl,_th,'reportName',repName); 
    document.daily_report.criteria_Id.value=_id;

    try{
        lastRow.style.background="#FAFAFA";         
    }catch(obj){}                                   

    th.style.background     =   "#DDDDDD";                      
    lastRow                 =   th;                         

    selectDesc.innerHTML    =   trans.xml;                      
}   
JavaScript代码:

function XmlXslXform(xmlIsland, xslIsland, paramName, paramValue)
{
    var objxsltTemplate;
    var objxsltProcessor;
    var objXSLT2; //FreeThreadedDOMDocument

    try
    { 
        objXSLT2 = new ActiveXObject("MSXML2.FreeThreadedDOMDocument.3.0");
        objXSLT2.async = false;
        objXSLT2.validateOnParse = false;
        objXSLT2.loadXML(xslIsland.xml);
        objxsltTemplate = new ActiveXObject("MSXML2.XSLTemplate.3.0");
        objxsltTemplate.stylesheet = objXSLT2;
        objxsltProcessor = objxsltTemplate.createProcessor();
        objxsltProcessor.input = xmlIsland;
        objxsltProcessor.addParameter(paramName, paramValue);

        objxsltProcessor.transform();

        return objxsltProcessor.output;
    }
    catch(e)
    {
        / error handling
    }
}

为什么一个
尝试
而捕获的
为空?如果您想获得发生错误的指示,请记录该错误。但是,一般来说,新版本的IE不支持XML数据孤岛(我想您使用的是
xslIsland.XML
),您需要使用
XMLHttpRequest
或使用
load
方法从URL加载XML,例如
objXSLT2.load('sheet.xsl')
。感谢您的快速回复,Martin。我的catch块不是空的,我只是没有在这里共享,因为它是自定义错误。