Javascript Xslt将节点的字母更改为小写
我想使用xslt从Xml创建KML代码 问题是xslt将节点的所有字母都更改为小写 这是我的密码:Javascript Xslt将节点的字母更改为小写,javascript,xml,xslt,Javascript,Xml,Xslt,我想使用xslt从Xml创建KML代码 问题是xslt将节点的所有字母都更改为小写 这是我的密码: <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <xsl:for-each sele
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="tasks/task">
<kml >
<Placemark>
<name><xsl:value-of select="title"/></name>
<description>
<xsl:value-of select="abilities"/>
</description>
<Point><coordinates><xsl:value-of select="geotag"/></coordinates></Point>
</Placemark>
</kml>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
我如何处理那个问题?
提前感谢。如果您将此文档作为文本/html而不是应用程序/xhtml+xml提供,则innerHTML将使用html解析器,该解析器(大部分)不区分大小写,因此不一定保留元素名称。您可以将文档作为XHTML(如果格式正确)提供,也可以从javascript显式调用xml解析器来解析XSLT脚本。您需要更改
xsltProcessor.transformToFragment(xml,文档)代码>
进入
xsltProcessor.transformToDocument(xml)代码>
这消除了对“拥有”文档的依赖。对我来说,这解决了一个非常类似的问题。我从未听说过这样的问题。您的输入XML是什么样子的?小写字母是否可能是因为我正在读取div.innerHTML中的字符串?谢谢您的回答。我应该在创建div时设置内容“application/xhtml+xml”吗?因为我在文档上更改了它,但没有起作用:最好是在服务器上设置它,实际上,更改它会改变整个文档的解释,直接访问xml解析器是一个干扰较小的更改。谢谢,对我来说,这是更好的答案。
var xsltTasksAsKml = xsltProcessor.transformToFragment(xml, document);
var div = document.createElement('div');
div.appendChild(xsltTasksAsKml);
alert(div.innerHTML);