Q Quazzo Medlem sedan juli 2001 324 inlägg Frågan 3 jan. 2005 07:14 #1 Hej!
Jag har följande xml-fil och vill på ett enkelt sätt skriva ut options1 med hjälp av ASP och undrar då hur jag gör?
<?xml version="1.0" encoding="utf-8"?>
<Root>
<question>
<Options id=0>fråga1
</Options>
<Options id=1>alternativ2
</Options>
<Options id=2>alternativ3
</Options>
<Options id=3>alternativ4
</Options>
</question>
</Root>
Mitt förslag är följande, men det vill sig inte riktigt:
set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = False
objXML.load Server.MapPath("minfil.xml")
Set nodeList = objXML.documentElement.childNodes
response.write nodelist.item(2).xml
response.write "<br>"
/red. Adderade [kod]-taggar. //OveRRidE
O OveRRidE Medlem sedan feb. 2001 12 078 inlägg Vad är det som inte vill sig? Felmeddelande? Vidare, index 2 i nodelistan, som du hänvisar till i din utskrift; borde inte det vara 1 ifall du vill ha options 1 som du skrev? Jag gissar på att den samlingen börjar på 0.
@nders Medlem sedan juni 2000 32 967 inlägg Menar du att du vill skriva ut alla options?
Set nodeList = objXML.getElementsByTagName("Options")
for each obj in nodeList
Response.Write obj.text & "<br>"
next
Eller bara den option som har id 1?
set objNode = objXML.selectSingleNode("//Options[@id='1']")
Response.write objNode.text
Koden är väldigt otestad, skall tilläggas...
mvh
Q Quazzo Medlem sedan juli 2001 324 inlägg Anders:Precis så här jag vill ha det, men nu klagar den på:
Object required: 'objNode'
line 22
line22= Response.write objNode.item
Vilket borde innebära att något är fel med följande:
set objNode = objXML.selectSingleNode("/Options[@id='1']")
@nders Medlem sedan juni 2000 32 967 inlägg Till att börja med får du se till att din xml-fil är korrekt. Du skall ha citationstecken runt alla attributvärden:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<question>
<Options id="0">fråga1
</Options>
<Options id="1">alternativ2
</Options>
<Options id="2">alternativ3
</Options>
<Options id="3">alternativ4
</Options>
</question>
</Root>
Sedan:
Vilket borde innebära att något är fel med följande:
set objNode = objXML.selectSingleNode("/Options[@id='1']")
Står det inte två slashar i mitt kodexempel? Det är bara elementet Root du kan lägga en slash framför.
Edit: varför använder du encodingen utf-8 i ditt xml-dokument? Jag hade ändrat till iso-8859-1 för att slippa krångel med svenska tecken.
toha Medlem sedan dec. 1999 707 inlägg