asp 搜索XML重复记录的代码?

yvh1022 2009-11-28 01:40:27
XML文档:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<rsp>
<prop_value>
<pid>11111</pid>
<prop_name>标题</prop_name>
<name>手机</name>
</prop_value>
<prop_value>
<pid>1627207</pid>
<prop_name>颜色</prop_name>
<name>粉色</name>
</prop_value>
<prop_value>
<pid>1627207</pid>
<prop_name>颜色</prop_name>
<name>白色</name>
</prop_value>
<prop_value>
<pid>1627207</pid>
<prop_name>颜色</prop_name>
<name>黑色</name>
</prop_value>
</rsp>

现在需要将XML中pid的值为:1627207 的颜色分类合到一起显示成:
标题:手机
颜色:粉色,白色,黑色

补充一下,不仅仅是颜色一项有重复的值,还有其他的
完整的ASP代码应该怎么写呢?
...全文
50 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yvh1022 2009-11-28
  • 打赏
  • 举报
回复
谢谢
hookee 2009-11-28
  • 打赏
  • 举报
回复

<%
Set oDoc = CreateObject("Msxml2.DOMDocument")
With oDoc
.async = False
.validateOnParse = False
.preserveWhiteSpace = False
.resolveExternals = False
.setProperty "SelectionLanguage", "XPath"
.load "c:\a.xml"
If .parseError.errorCode <> 0 Then
sErrMsg = .parseError.errorCode & "|" & .parseError.srcText & "|" & .parseError.reason
Response.Write sErrMsg
Response.End
End If
Set oNodes = .selectNodes("//prop_value[not(pid=preceding::pid)]/pid")
For i = 0 To oNodes.length-1
Set oPro = .selectNodes("//prop_value[pid='" & oNodes(i).text & "']")
Response.Write oPro(0).selectSingleNode("prop_name").text & ":"
s = ""
For j=0 To oPro.length-1
s = s & oPro(j).selectSingleNode("name").text & ","
Next
If s<>"" Then s = Left(s, Len(s)-1)
Response.Write s & ":<br>"
Next
End With
Set oDoc = Nothing
%>

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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