Jag vill kunna redigera en xml fil online, Om jag förstår dig rätt så är problemet att du inte får med något värde från den dynamsikt skapade textarena. uppdatera en xml-fil
Jag skriver ut alla noder i en egen textarea, så här och döpper den textarean till namnet på noden . . . fungerar bra !
<code>
For i = 0 To nodeLst.length - 1
strName = trim(nodeLst.Item(i).Attributes.Item(0).Value)
strContent = nodeLst.Item(i).text
Response.Write "<span class=""Rubrik2"">" & strName & "</span>" & "<br>" & vbCrlf
Response.Write "<textarea name="""& strName &""" style=""width: 100%; height:45px;"">" & strContent & "</textarea>" & "<br>" & vbCrlf
Next
</code>
Och när jag klickar på knappen skickas jag till actions.asp
som innehåller:
Sedan när jag vill ändra på xml filen så gör jag så här ,
först tar jag bort filen för att sedan skapa den på nytt...
<code>
Set nodeLst = XMLDoc.getElementsByTagName("translation")
sXML = "<?xml version='1.0' encoding='Unicode' ?>" & vbCrlf
sXML = sXML & "<channel>" & vbCrlf
sXML = sXML & "<lang name='EN' charset='iso-8859-1'>" & vbCrlf
sXML = sXML & "" & vbCrlf
For i = 0 To nodeLst.length - 1
strName = nodeLst.Item(i).Attributes.Item(0).Value
strContent = Request.Form(strName)
sXML = sXML & "<translation name="""& strName &""">" & strContent & "</translation>" & vbCrlf
Next
sXML = sXML & "</lang>" & vbCrlf
sXML = sXML & "</channel>"
XMLDoc.loadXML sXML
strPath = (Server.MapPath("lib_languages/"& strFile &""))
XMLDoc.save strPath
</code>
Det är alltså värdet i Request.Form(strName) som spökar för mig om jag sätter ett fast vörde i strContent så fungerar det bra men jag vll ju ha det man skriver in i textarean ?
Någon som har några tips ?Sv: uppdatera en xml-fil
Har du testat att felsöka i filen action.asp? Vad händer om du skriver ut variablen "strName"? Får den något värde?
Det du kan testa med annars är ju att döpa textarean till typ:
<code>
Response.Write "<textarea name=""textarea"& i &""" style=""width: 100%; height:45px;"">" & strContent & "</textarea>" & "<br>" & vbCrlf
</code>
Och sedan hämta det mha:
<code>
strTextAreaName = "textarea" & i
strContent = Request.Form(strTextAreaName)
</code>
Har inte testat det hela men det borde fungera, har för mig att jag har löst något liknande på det sättet. Annars skyller jag på morgontrötthet.... :-P
/A