Actionscript 3 schreiben Sie ein XML-element innerhalb einer anderen mit code
Bin ich ein wenig Probleme mit einfachen XML-Codierung. Ich bin mit einer einfachen flash-Anwendung zu schreiben, die eine XML mit Kunden-Daten (einfache Sachen, wie z.B. Telefonnummer, name, E-Mail, etc).
Verstehe ich, wie schreiben von XML-Code manuell, aber mein Problem kommt, wenn ich will erstellen Sie ein element innerhalb eines anderen Elements ist. Ich bin mit AS3.
So, ich habe zum Beispiel den folgenden xml-Code.
<xmlcontainer>
<client>
<name>Marco</name>
<phone>123456789</phone>
</client>
<client>
<name>Roberto</name>
<phone>987654321</phone>
</client>
</xmlcontainer>
Wenn ich will, um ein neues element hinzuzufügen, das ist gut. Aber ich bin mir nicht sicher, wie Sie Sie hinzufügen, um ein element im INNEREN, wenn Ihre getan im code.
Ich habe mit .appendChild(<client/>)
so weit, aber Fehler pop-up, wie ich tun element innerhalb des Elements. Ich habe versucht, so zu schreiben, wie ein text-element (d.h. manuell), indem Sie das tun .appendChild("<client><name>Marco</name></client>")
, aber weniger als und als große Symbole don T-pass-zusammen richtig.
Kann mir jemand helfen hier?
EDIT: Wie gewünscht, hier ist der vollständige code.
function appendXML():void{
var xmlData:XML = new XML();
var xmlrequest:URLRequest = new URLRequest(String("xml/clientelist.xml"));
xmlLoader.load(xmlrequest);
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
function LoadXML(e:Event):void
{
xmlData = new XML(e.target.data);
xmlData.appendChild(<pessoa/>);
xmlData.appendChild(<id/>);
xmlData.id.appendChild(idfield.text);
xmlData.appendChild(<nome/>);
xmlData.nome.appendChild(nomefield.text);
xmlData.appendChild(<email/>);
xmlData.email.appendChild(emailfield.text);
xmlData.appendChild(<contacto/>);
xmlData.contacto.appendChild(contacto1field.text);
trace(xmlData);
var fileb:FileReference = new FileReference;
fileb.save( xmlData, "clientelist.xml" );
}
(pessoa = person, nome = name, contacto = phonenumber)
Editierte Frage mit der Funktion rufe ich aus, wenn ich das XML. Beachten Sie, dass diese "idfield.text" - text-Felder, und ich bestätigt haben, dass Sie funktionieren.
InformationsquelleAutor FoxLift | 2011-09-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bekomme ich keine Fehler mit dem code.
Ich veränderte die Werte der Textfelder und hard codiert als string zum testen .
So welche Fehler sind Sie immer?
Klingt für mich wie Ihre xml-Antwort vom server könnte gebrochen werden.
Der folgende code ist ein Beispiel, obwohl ich nicht thinkthe die Daten strukturiert die Art und Weise, die Sie wollen.
Und fassen Ihre Frage.
Wenn Sie einen Knoten hinzufügen "client" in Ihrem Fall können Sie nur Ziel ist es in 2 Arten.
Die erste Möglichkeit ist das erstellen eines XMLList-und-Schleife durch, bis Sie eins finden, die Sie suchen. Dies ist aufgrund der Tatsache, dass Sie mehrere "Kunden".
Die zweite Methode wäre die Id die Kunden irgendwie zum Beispiel ein Attribut.
Wenn Sie wissen, die Id, die Sie ansprechen können, dass bestimmte Knoten einfach.
CDATA ist ein wrapper für die stringin den Knoten selbst. Wenn Sie unerwünschte Zeichen, die nicht xml-freundlich, eingetragen in das Textfeld, es wird nicht brechen Ihre xml
InformationsquelleAutor The_asMan
Versuchen:
Sollten Sie sich
InformationsquelleAutor Guillaume Malartre
Können Sie in der XML -
{ here_my_var_to_replace }
- notation, zum Beispiel, ersetzen Sie Ihre dynamischen DatenHier ein Beispiel :
InformationsquelleAutor Patrick