【问题标题】:Why is my XSLT formatting not working correctly in Microsoft Edge on the Windows 10 OS?为什么我的 XSLT 格式在 Windows 10 操作系统的 Microsoft Edge 中无法正常工作?
【发布时间】:2016-09-17 23:59:02
【问题描述】:

我一直致力于通过 XSLT 1.0JSXML 的组合在 CMS 中开发的 webpage 并且来了在通过 Microsoft Edge (37.14316.1000.0) 浏览器访问 Windows 10 操作系统 上的 (ASP.NET) 网页时,特别是 遇到页面呈现问题强>(Microsoft EdgeHTML 14.14316)。

问题:

(使用上述条件从虚拟机捕获的屏幕截图)

如您所见,当您使用上述条件访问我的网页时,课程页面结构被打断。似乎我的XSLT file 没有正确执行,并且某处正在发生冲突?这非常令人沮丧,因为 XSLT/JS/XML 页面在所有以前的 Internet Explorer 浏览器版本(一直到 7)以及其他领先的现代浏览器(如 Chrome、Firefox、Opera 和 Safari)中都能完美运行。

令人发指的是,该页面实际上可以在 Windows 10 版本 10.0.10240 Build 10240 Edge 20.10240.16384.0 上运行,但我相信这是以前的 Edge 浏览器版本,所以介于上一个浏览器版本和这个版本之间一、这个渲染问题突然浮出水面?

使用XSLT/XML on the Client 方法调用我的XSLT/XML 文件的JS file 显然是有效的,因为数据出现在页面中,但有些地方不对劲,我正在努力找出导致问题的原因?

我尝试过使用主要的CSS file,但已排除这是根本原因。

有趣的是,当通过内置的 Edge 开发工具进入我的页面源代码时,我设法确定如果我删除了 line 55 上的 form1 引用,就在打开的 <body> 标记内(即<form method="post" action="/aatp/courses/crops/resource-capture-by-crops.aspx" id="form1">),页面会立即自我修复并正确呈现,就像在所有其他互联网浏览器上一样。

疯了??

也许这个POST <form1> 调用与我的JS 文件发出的GET 请求直接冲突? form1 调用是我们的 CMS 架构的结果,因为我们的网页实际上是一个大表单,所以我无法摆脱这个“CMS 生成的代码”。

我们将非常感谢和欢迎任何有关修复的建议或想法!

【问题讨论】:

  • 如果将<xsl:output method="html"/> 放入 XSLT 是否会有所改善?

标签: javascript asp.net xslt windows-10 microsoft-edge


【解决方案1】:

通过将<xsl:output method="html"/> 放入您的 XSLT 样式表中,尝试让 Edge 相信样式表会创建 HTML 元素。

【讨论】:

  • Martin 的解决方案(将<xsl:output method="html"/> 添加到 XSLT 文件)解决了这个问题,并且页面在 Microsoft Edge 浏览器的 Windows 10 中完美呈现。
  • 我们应该在哪里添加它
  • @BKM:声明 <xsl:output method="html"/> 属于您的 XSLT 代码,作为 xsl:stylesheetxsl:transform 根元素的子元素。请参阅xsltfiddle.liberty-development.net/pPJ8LVr 以获取最小示例或查阅任何 XSLT 教程。如果您自己有问题,请考虑单独提出问题,并在新问题中提供所有详细信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-25
  • 2016-05-24
  • 2015-08-24
  • 2018-02-18
  • 1970-01-01
  • 2023-04-04
相关资源
最近更新 更多