如何将 asp 中服务器端生成的 xml 在页面显示成表格?

nchen123 2003-09-29 02:08:46
在 asp 中,我写了一个函数调用存储过程,然后将记录集转化成了 xml 文档。
就是不知道怎么把这个 xml 表示成表格的形式,请指教。

我的函数:
<%
function MySavedDoc(userId)
...
MySavedDoc = strCleanXML
end function
%>

调用函数可以输出xml:
<%
a = MySavedDoc(1)
%>

上面这个调用后,在 a 中存储的字符串是:

<xml>
<row>
<docId>6</docId>
<docTypeName>请假条</docTypeName>
<docFileName>测试文档.txt</docFileName>
<docFileSize>14</docFileSize>
<descr>测试文档1</descr>
<creatorName>张三</creatorName>
<createDateTime>2003-09-28T17:06:46</createDateTime>
<secretLevel>普通</secretLevel>
<saveDateTime>2003-09-28T17:08:41.400000000</saveDateTime>
</row>
</xml>

注:我不想把这个文档通过文件来中转,而是要直接表示出来。
...全文
49 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ssm1226 2003-09-29
  • 打赏
  • 举报
回复
<HTML>
<HEAD>

</HEAD>
<BODY>
<xml id=xmldata>

<row>
<docId>6</docId>
<docTypeName>请假条</docTypeName>
<docFileName>测试文档.txt</docFileName>
<docFileSize>14</docFileSize>
<descr>测试文档1</descr>
<creatorName>张三</creatorName>
<createDateTime>2003-09-28T17:06:46</createDateTime>
<secretLevel>普通</secretLevel>
<saveDateTime>2003-09-28T17:08:41.400000000</saveDateTime>
</row>

</xml>
<table datasrc="#xmldata" border=1>
<tr>
<td>docId</td>
<td><span datafld=docID></td>
</tr>
<tr>
<td>docTypeName</td>
<td><span datafld=docTypeName></td>
</tr>
</table>

</BODY>
</HTML>
nchen123 2003-09-29
  • 打赏
  • 举报
回复
多谢 ssm1226(雨中人) 大哥!
我决定开始学习 xml 技术,以前没来过这个版, 今后还请多多指教:)
对了,顺便还想问一下,

我这个问题的情况不知道用数据岛输出行不行? 我知道内联数据岛需要一个 id 属性,但是总是写不正确。
另外, 数据岛和 xsl 来表现数据各有些什么优势,能否赐教。
ssm1226 2003-09-29
  • 打赏
  • 举报
回复
use DOM:

<%
a="<xml> " & _
"<row>" & _
"<docId>6</docId>" & _
"<docTypeName>请假条</docTypeName>" & _
"<docFileName>测试文档.txt</docFileName>" & _
"<docFileSize>14</docFileSize>" & _
"<descr>测试文档1</descr>" & _
"<creatorName>张三</creatorName>" & _
"<createDateTime>2003-09-28T17:06:46</createDateTime>" & _
"<secretLevel>普通</secretLevel>" & _
"<saveDateTime>2003-09-28T17:08:41.400000000</saveDateTime>" & _
"</row>" & _
"</xml>"

dim xmldoc,xsldoc
set xmldoc=server.CreateObject("MSXML2.DOMDocument")
xmldoc.async=false
xmldoc.loadXML a

set xsldoc=server.CreateObject("MSXML2.DOMDocument")
xsldoc.async=false
xsldoc.load server.MapPath("csdn0022.xsl")


Response.Write xmldoc.transformNode(xsldoc)
set xsldoc=nothing
set xmldoc=nothing
%>

csdn0022.xsl:

<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" encoding="gb2312" method="xml" version="1.0" omit-xml-declaration="yes" media-type="text/xml"/>
<xsl:template match="/">

<xsl:apply-templates/>

</xsl:template>
<xsl:template match="row">
<table border="1">
<xsl:for-each select="*">
<tr>
<td><xsl:value-of select="local-name()"/></td>
<td><xsl:value-of select="."/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧