日期:2014-05-16  浏览次数:20943 次

asp在对xml操作错误
错误提示:
Microsoft VBScript 运行时错误 (0x800A01B6)
对象不支持此属性或方法: 'objRootlist.appendChild_xss'

代码:
 path1=request("path")+"\backup"
   path2=request("path")+"\backuppic"
   '将操作写入xml
 strSourceFile = Server.MapPath("./") & "\record.xml"
'获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
'创建XML对像
objXML.load(strSourceFile)
'把XML文件读入内存中
Set objRootlist = objXML.documentElement.selectSingleNode("root")
'选取<root>节点
if objRootlist.hasChildNodes then
'判断<NewList>是否有子节点(因为如果是每一次<root>是没有子节点的,如果不加判断在第一次运得时就会报错
idt = objRootlist.lastchild.firstchild.text+1
'这里获得将要插入子节点的ID号,其ID号为<root>的最后一个子节点(lastchild)的第一个子节点(firstchild)
'的ID号加1(这里我们按照关系型数据库的ID号来递增)
else
'如是没有字子节点则是第一次留言ID号设为1
idt=1
end If
brstr=chr(13)&chr(10)&chr(9)
XMLnode=brstr&"<list>"&vbnewline & _
     "<id>"&idt&"</id>"&vbnewline & _
"<name>"&id&"</name>"&vbnewline & _
"<operat>备份</operat>"&vbnewline & _
"<path1>"&path1&"</path1>"&vbnewline & _
"<path2>"&path2&"</path2>"&vbnewline & _
"<time>"&Replace(Replace(Now(),"上午 ",""),"下午 ","")&"</time>"&vbnewline & _
"</list>"&vbnewline&vbnewline

   '根据得到的数据建立XML片段
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
'建立一个新XML对像
objXML2.loadXML(XMLnode)
'把XML版片段读入内存中
set rootNewNode=objXML2.documentElement
'获得objXML2的根节点
objRootlist.appendChild_xss(rootNewNode)
'把XML片段插入到test.xml中
objXML.save(strSourceFile)
'存储test.xml文件(因为不存储test.xml只在内存中更新了)
set objXML=nothing
set objXML2=nothing
   
ASP XML 对象不支持

------解决方案--------------------
 objRootlist.appendChild_xss(rootNewNode) 改成 objRootlist.appendChild(rootNewNode) 就可以了