| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| n00b Registriert seit: Apr 2005 Ort: BÄRlin
Beiträge: 38
|
Holla zusammen, ich habe ein kleines Problem: Ich habe eine Funktion, die per "xml.sendandload()" eine Aktion durchfürt. Sie erhält dann eine Rückgabe. Soweit so gut, dass funktioniert. Nun will ich diese Rückgabe per "return x;" an die Aufrufende Funktion zurückgeben. Das funktioniert leider nicht... Selbst wenn ich "return x;" durch "return 1;" ersetzte kommt einfach nix zurück.... anbei die aufrufende Funktion und die, die das return produziert. Funktion die das return gibt: Code: public function registrieren(nickname, password, vorname, nachname, email, newsletter){
// ------------- XML-generieren --------------------------
xml.ignoreWhite = true;
xml.contentType = 'text/html';
xml.xmlDecl = '<?xml version="1.0" encoding="UTF-8"?>';
var xmlUser = xml.createElement('xmlUser');
var newUser = xml.createElement('newUser');
newUser.attributes.nickname = nickname;
newUser.attributes.password = password;
newUser.attributes.vorname = vorname;
newUser.attributes.nachname = nachname;
newUser.attributes.email = email;
newUser.attributes.newsletter = newsletter;
xml.appendChild(xmlUser);
xml.firstChild.appendChild(newUser);
// -------------------------------------------------------
xml.sendAndLoad(base_url + "f=5", xml, "POST");
xml.onLoad = function(success) {
if(!success) {
this.firstChild.removeNode();
return 0;
}else {
var p:Array = this.firstChild.childNodes;
this.firstChild.removeNode()
var x:Number;
x = p[0].attributes["txt"];
return 1;
//trace ("test: "+p[0].attributes["txt"]);
}
}
} Funktion die Aufruft: Code: public function registrieren() {
if (validate()) {
var stat:Number
stat = _root.forum.registrieren(nickname.text,
password.text,
vorname.text,
nachname.text,
email.text,
newsletter.hit
);
trace ("stat: " + stat);
switch (stat){
case 1:
trace("name vergeben");
break;
case 2:
trace("okay");
break;
default:
trace("nix angekommen");
}
}
} Vielen Dank schon mal fürs Anschauen, Liebe Grüße, der Jörg Geändert von Eisdealer (13-01-2006 um 11:51 Uhr) |
| | |
| | #2 (permalink) |
| Custom Title Registriert seit: Aug 2001
Beiträge: 467
|
Das kann nicht klappen. Das onLoad findet ja irgendwann mal statt - also wenn alles geladen ist. Das bekommt Dein Funktionsaufruf nie mit. Du könntest innerhalb des xml.onLoads einen Event abfeuern sobald alles geladen ist. Deine Klasse meldet sich dann als Listener an und reagiert dann.
__________________ ---::::: AVisioN :::::--- Geändert von AVisioN (13-01-2006 um 12:12 Uhr) |
| | |
| | #3 (permalink) |
| n00b Registriert seit: Apr 2005 Ort: BÄRlin
Beiträge: 38
| Erledigt
Vielen Dank euch beiden für den Tip!! Saß jetzt fast 3 Stunden dran und hab sowas befürchtet... @AVisioN : Ich hab zwar langsam immer mehr Plan, und ich weiss auch wie ich ein auftretendes Event registriere, aber wie ich eins erzeuge ist mir nicht klar. Hast du vielleicht ein Stichwort dazu? @hgseib : Ist ne else Klausel drin eingebaut. Habs leider falsch eingerückt... Danke Jörg |
| | |
| | #4 (permalink) |
| Custom Title Registriert seit: Aug 2001
Beiträge: 467
| PHP-Code:
__________________ ---::::: AVisioN :::::--- |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |