我希望有一个简单的答案,我过度寻找,但我已经搜索了几个小时,似乎找不到答案。另外,我一直在使用经典的asp。我只需要获取这个XML结构的第一个元素的文本。
<section href="multifamily">For Multifamily
<item href="resources.htm">Resources</item>
<item href="vacancy-rates">Rental Vacancy Rates</item>
<item href="multiFamily-update">Multifamily Update Newsletter</item>
</section>
由于某种原因,我无法获得文本"Multifamily",而循环遍历整个XML文件。
下面是目前我写的一些代码:
Sub findName(xmlObject)
Set sections = objXMLDoc.SelectNodes(XMLObject.ObjType)
countSections(sections)
End Sub
Sub countSections(sections)
Response.write(sections.length)
If sections.length > 1 Then
putInArray(sections)
End IF
End Sub
Sub putInArray(sections)
Dim section
''For Each section In sections
'' Response.write(section.innerText)
''Next
For i = 0 To sections.length -1
Response.write(sections.item(0).text)
Next
End Sub
非常感谢大家的帮助。
看起来XML无效。您可以在节点或文本中使用节点…不是两个。您需要将"For Multifamily"放在节点中,或者将其用作属性。例如
<section href="multifamily">
<newnode>For Multifamily </newnode>
<item href="resources.htm">Resources</item>
<item href="vacancy-rates">Rental Vacancy Rates</item>
<item href="multiFamily-update">Multifamily Update Newsletter</item>
</section>
或
<section href="multifamily" newattribute="For Multifamily">
<item href="resources.htm">Resources</item>
<item href="vacancy-rates">Rental Vacancy Rates</item>
<item href="multiFamily-update">Multifamily Update Newsletter</item>
</section>
我找到了答案,就像我怀疑的那样,我忽略了一些东西。下面是答案,以防其他人有同样的问题:
For i=0 To ObjNodes.length -1
Response.write(ObjNodes(i).firstChild.text &"<br />")
Next
我只需要抓取第一个子元素,而不是所有的子元素。