不允许处理指令目标:已解决
出现错误“不允许匹配‘xX[lL]’的处理指令目标”在 XSLT 页面中,当 XML 声明未放置在文件的最开头、任何其他内容之前
原因:
基于 Xerces 的工具(包括 XSLT 处理器)在遇到文档中的其他内容后遇到 XML 声明时会产生此错误。这包括:
解决方案:
要解决此错误,请检查以下内容:
1.可见内容:
确保“”之前没有空格或其他可见内容宣言。如果存在,请将其删除。
2.不可见内容:
使用 W3C 推荐的技术(例如 XML 解析器或文本编辑器)来识别和删除 XML 文件中的 BOM。
3.杂散 XML 声明:
以不区分大小写的方式搜索“
示例:
在提供的 XSLT 页面中,出现错误是因为““声明未放置在所有其他内容之前:
<?xml version="1.0" encoding="windows-1256"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ... </xsl:stylesheet>
通过将 XML 声明移动到页面的最开头,应该解决错误:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <?xml version="1.0" encoding="windows-1256"?> ... </xsl:stylesheet>
以上是如何修复 XSLT 中的'不允许处理指令目标”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!