问两个问题,高手一定要指教:能不能用循环遍历items中的所有子元素,该如何做???在事先不知道元素aaa有多少属性,以及不知道属性名的情况下,

itbook 2003-01-09 10:18:03
问两个问题,高手一定要指教:
<?xml version="1.0" encoding="gb2312"?>
<items>
<aaa id='' width='' a=''>
</aaa>
<bbb id='' width='' z=''>
</bbb>
<ccc id=''>
</ccc>
</items>
问题1:
能不能用循环遍历items中的所有子元素,该如何做???
问题2:
在事先不知道元素aaa有多少属性,以及不知道属性名的情况下,把所有的属性都提取出来,该如何做???
...全文
160 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
saucer 2003-01-09
  • 打赏
  • 举报
回复
assume your xml is like this:

<items>
<aaa id='1' width='2' a='3'>
</aaa>
<bbb id='4' width='5' z='6'>
</bbb>
<ccc id='7'>
</ccc>
</items>


try

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="*">
<xsl:for-each select="@*">
<xsl:value-of select="local-name()" />=<xsl:value-of select="." />
</xsl:for-each>
<xsl:apply-templates />
</xsl:template>
</xsl:stylesheet>
itbook 2003-01-09
  • 打赏
  • 举报
回复
用xsl能不能实现,如何实现?????????
yonghengdizhen 2003-01-09
  • 打赏
  • 举报
回复
建议多看看xpath语法..
它提供了丰富的结点及结点集匹配的能力..
saucer 2003-01-09
  • 打赏
  • 举报
回复
try something like (in Javascript using MSXML):


<script language="javascript">
var xmldoc = new ActiveXObject("Microsoft.XMlDOM");
xmldoc.async = false;
xmldoc.load("items.xml");
alert(xmldoc.xml);
walk(xmldoc.documentElement);
function walk(node)
{
alert(node.nodeName + ":" + node.text);//node.nodeValue);

if (node.attributes != null && node.attributes.length > 0)
{
for (var i=0; i<node.attributes.length; i++)
alert(node.attributes[i].nodeValue);
}

if (node.hasChildNodes)
{
for (var i=0; i < node.childNodes.length; i++)
walk(node.childNodes[i]);
}


}
</script>
itbook 2003-01-09
  • 打赏
  • 举报
回复
多谢saucer(思归, MS .NET MVP):问题解决

8,909

社区成员

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

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