Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.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
将XML转换为XSLT在IE 11中不起作用_Xml_Xslt - Fatal编程技术网

将XML转换为XSLT在IE 11中不起作用

将XML转换为XSLT在IE 11中不起作用,xml,xslt,Xml,Xslt,我正在使用IE11并试图修复一个以前可以正常工作的应用程序。它仍然在Chrome中工作。 XML是从存储过程返回的,但xslt无法处理它。以下是.js文件中的代码: function completeReview(data) { xml = data.responseXML; xsl = asyncLoadXSLT('../Styles/XSLT/MyXslt.xslt'); transformXSLT(xml, xsl, "CommentContainer");

我正在使用IE11并试图修复一个以前可以正常工作的应用程序。它仍然在Chrome中工作。 XML是从存储过程返回的,但xslt无法处理它。以下是.js文件中的代码:

function completeReview(data) {
    xml = data.responseXML;
    xsl = asyncLoadXSLT('../Styles/XSLT/MyXslt.xslt');
    transformXSLT(xml, xsl, "CommentContainer");
    $("#txtComment").val('');
}

//Transform results
function transformXSLT(xml, xslt, containerID) {
    $('#' + containerID).html(" ");
    // code for IE for client side xsl transformation
    if (window.ActiveXObject || xhttp.responseType == "msxml-document") {
        ex = xml.transformNode(xsl);
        $('#' + containerID).html(ex);
    }
代码错误在

ex = xml.transformNode(xsl); 
错误显示:

JavaScript runtime error: Object doesn't support property or method 'transformNode'.
我不确定问题出在哪里。我尝试通过引入-

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />

在xslt文件中,这没有帮助。 我是这样做的:

<xsl:template match="DATA">
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />
<xsl:for-each select="Comment">
...

...
但我不知道该如何包含它。
请指导我应该采取哪些必要步骤来解决此问题。

我们需要查看相关代码,您拥有的
xml
变量设置为
data.responseXML
但您尚未显示创建
data
对象并发出请求的代码。如果
data
XMLHttpRequest
对象,在发出请求之前,请确保为IE设置了
data.responseType='msxml document'
。此外,您可能需要更详细地解释代码是否在IE 11之前的IE版本中工作,但从未在IE 11中工作过,或者它是否在IE 11中工作过并已停止工作。在后一种情况下,您可能需要解释发生了什么变化。至于
,您需要使用您显示的脚本代码将其放入HTML文档中,而不是放入XSLT或XSLT生成的HTML中。我们需要查看相关代码,您拥有的
xml
变量被设置为
data.responseXML
,但您尚未显示创建
data
对象并发出请求的代码。如果
data
XMLHttpRequest
对象,在发出请求之前,请确保为IE设置了
data.responseType='msxml document'
。此外,您可能需要更详细地解释代码是否在IE 11之前的IE版本中工作,但从未在IE 11中工作过,或者它是否在IE 11中工作过并已停止工作。在后一种情况下,您可能需要解释发生了什么变化。至于
,您需要使用所显示的脚本代码将其放入HTML文档中,而不是放入XSLT或XSLT生成的HTML中。