如何解决如何在xls中输出所有xml?
| 我正在尝试为SharePoint开发一个Webpart,看来我需要学习XSLT来做到这一点,修改“ 0”并自定义“ 1”。 我正在向当前的current0ѭ添加模板,这是我的当前代码: 我试图使输出成为整个XML文件,因为我不知道它的格式(我不知道SharePoint将它放在哪里) 到目前为止,我可以输出属性名称槽name()
,但是text()
什么也不会返回:
<xsl:template name=\"printP\" match=\"Row[@Style=\'printP\']\" mode=\"itemstyle\">
<xsl:for-each select=\"@*\">
Property:<xsl:value-of select=\"name()\"/> |
Value:<xsl:value-of select=\"text()\"/><br/>
</xsl:for-each>
</xsl:template>
欢迎对如何弄清楚XML格式提出任何其他建议。
编辑:删除了无用的部分。
解决方法
要输出属性节点的值,请使用
select=\".\"
:
Value:<xsl:value-of select=\".\"/>
text()
选择任何文本节点作为当前节点的子节点。只有元素节点具有文本节点子级;属性没有。
但是,如果您要执行的操作是将完整的输入XML文档复制到输出中,保持不变,则将所有这些模板丢弃并使用标识转换:
<!-- Identity transform -->
<xsl:template match=\"@* | node()\">
<xsl:copy>
<xsl:apply-templates select=\"@* | node()\"/>
</xsl:copy>
</xsl:template>
这将复制所有内容,而不会更改(如XML,而不是文本)。
,
我可以通过名称()输出属性名称,但文本()什么也不返回
<xsl:for-each select=\"@*\">
Property:<xsl:value-of select=\"name()\"/> |
Value:<xsl:value-of select=\".\"/><br/>
</xsl:for-each>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。