Text der ausgewählten option in einem select auf Textfeld...
Dogfish
- javascript
Vollst. Titel:
Text der ausgewählten option in einem select auf Textfeld in anderem Frame übertragen
Hallo ihr da draußen,
ich bin gerade fieberhaft auf der Fehlersuche, jedoch ich kann den Fehler nicht finden.
<select name = "wperson">
Das ist der select-Tag, in den mit PHP verschiedene options hinzugefügt werden.
Nun will ich, dass der Text der gerade ausgewählten option in ein Textfeld übertragen wird:
onChange = "parent.frames[1].window.document.mfrm.WHISTPER_TO.value = window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
Das select befindet sich in einer Form namens "whisper", wie ja zu erkennen ist.
Das Textfeld befindet sich in einem anderen Frame, dem Frame nummer 2. Es befindet sich in einer Form namens "mfrm" und heißt "WHISPER_TO", wie auch oben abzulesen ist.
Ich wähle nun im select eine andere option aus, jedoch nichts passiert.
Ich habe auch schon verschiedene Dinge getestet, also das onChange funktioniert auf jeden Fall.
Danke schon mal im Vorraus.
Viele Grüße,
Dogfish
PS: Ist es auch möglich, den anderen Frame mit seinem Namen anzusprechen?
Dann würde ich nämlich keine Probleme kriegen, wenn sich das Frameset in einem anderen Frameset befände.
Hi,
onChange = "parent.frames[1].window.document.mfrm.WHISTPER_TO.value = window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
Auto-Debugging (sollte automatisch kommen):
alert(parent); alert(parent.frames[1]); ...; alert(parent.frames[1].window.document.mfrm.WHISTPER_TO.value);
alert(window); alert(window.document); alert(window.document.whisper); ...; alert(window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text);
Nun gut, Du musst nicht unbedingt bei "window" anfangen, aber im Prinzip gehst Du bei einem "nichts passiert"-Fehler _immer_ so vor.
Ich wähle nun im select eine andere option aus, jedoch nichts passiert.
Je nach Browser feuert onChange auch erst, wenn das <select> den Fokus verloren hat.
PS: Ist es auch möglich, den anderen Frame mit seinem Namen anzusprechen?
Natürlich. parent.framename ist genauso möglich.
Dann würde ich nämlich keine Probleme kriegen, wenn sich das Frameset in einem anderen Frameset befände.
Doch, vermutlich schon - wegen der Same Origin Policy. Gehst Du über Host-Grenzen hinweg, gibt's einen Fehler.
Cheatah
Hallo,
Vielleicht geht es so:
onChange = "parent.frames[1].document.mfrm.WHISTPER_TO.value = document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
Es könnte gehen, bin mir aber nicht ganz sicher!"
Es geht aber das Frame mit seinem Namen anzusprechen:
onChange = "parent.[Hier der Name des Frames(ohne [])].document.mfrm.WHISTPER_TO.value=document.whisper.wperson
.options[window.document.whisper.wperson.options.selectedIndex].text;">
Probiers mal aus, müsste aber funktionieren!!!
hallo dogfish,
onChange = "parent.frames[1].window.document.mfrm.WHISTPER_TO.value = window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
inzwischen würde ich mir doch gerne mal den vollständigen Quelltext anschauen. Es geht dir immer noch um _deine_ HP, das geht in Ordnung. Es geht auch in Ordnung, wenn du bei Verschiebungen bzw. anderen Akzentsetzungen neue Threads aufmachst. Aber es wäre vielleicht ganz nützlich, wenn du deinen Code in eine Textdatei packen und über irgendein temp-Verzeichnis online stellen würdest, damit man sich mal die "Gesamtkonstruktion" anschauen kann.
Grundsätzlich würde ich solche Zeilen wie
"parent.frames[1].window.document.mfrm.WHISTPER_TO.value = window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
in eine eigene Variable packen, mit der sich dann etwas leichter weiterarbeiten läßt
Ich wähle nun im select eine andere option aus, jedoch nichts passiert.
Genau das ist der Grund, weshalb ich die "Verpackung" in eine neue Variable empfehlen würde. Es sind möglicherweise in diesem "Pfad" zu viele Zeichen enthalten. Wirklich gründlich nachprüfen läßt sich das aber nur am vollständigen Quelltext
Ich habe auch schon verschiedene Dinge getestet, also das onChange funktioniert auf jeden Fall.
"onChange" ist ein EventHandler. Von diesen "Ereignisüberwachungstools" gibt es mehrere, siehe http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm#top
Grüße aus Berlin
Christoph S.
Lieber Christoph,
Aber es wäre vielleicht ganz nützlich, wenn du deinen Code in eine Textdatei packen und über irgendein temp-Verzeichnis online stellen würdest, damit man sich mal die "Gesamtkonstruktion" anschauen kann.
Das würde ich ja gerne machen, jedoch ich komme im Moment (schon seit 2 Monaten)
nicht mehr bei Lycos auf den FTP-Server, wo meine ganzen Daten lagern. Daher kann ich die aktuellen Versionen auch nicht uploaden. Bei dem Ausschnitt handelt es sich um einen Ausschnitt aus einem PHP-Chat, den ich aus dem Internet runtergeladen habe und den ich gerade so umprogrammiere, dass er eine leichtere Bedienung hat. Die Quellen könnte ich dir per E-Mail senden.
Grüße aus Biberach,
Dogfish
hi,
Bei dem Ausschnitt handelt es sich um einen Ausschnitt aus einem PHP-Chat, den ich aus dem Internet runtergeladen habe
Ja, das weiß ich ja nun.
und den ich gerade so umprogrammiere, dass er eine leichtere Bedienung hat. Die Quellen könnte ich dir per E-Mail senden.
Nein. Was du machen könntest, wäre, die download-Adresse anzugeben, damit ich (und andere) nachvollziehen kann, _was_ du da für deine Bedürfnisse umzumodeln versuchst
Christoph S.
Hi Christoph,
Was du machen könntest, wäre, die download-Adresse anzugeben, damit ich (und andere) nachvollziehen kann, _was_ du da für deine Bedürfnisse umzumodeln versuchst
Das Problem ist halt, dass ich die Dateien nicht uploaden kann, weil bei meinem Provider ja das FTP nicht funktioniert. Ich brauchte einen anderen Provider, oder irgendeine Möglichkeit, die Dateien in irgendein temporäres Internetverzeichnis hochzulade, jedoch habe ich keine Ahnung wo.
Gruß, Dogfish
Hallo ihr da draußen,
ich habe den Fehler gefunden
onChange = "parent.frames[1].window.document.mfrm.WHISTPER_TO.value = window.document.whisper.wperson.options[window.document.whisper.wperson.options.selectedIndex].text;">
Es handelt sich um einen Tippfehler, und zwar habe ich WHISTPER_TO statt WHISPER_TO geschrieben, also ein T zu viel. Beim Debuggen sind mir mindestens fünf Tippfehler unterlaufen, also habe ich das ganze nochmal überprüft und da ist mir außer dem auch noch ein weiterer aufgefallen.
Danke für eure Hilfe,
Dogfish
Hallo Dogfish.
Du hast die FAQ also endlich gelesen (vielleicht nicht ganz, aber auf jeden Fall die Teile mit dem Zitieren, Begrüßen und Verabschieden).
In diesem Sinne, willkommen im Forum!
Gruß
Norbert
Hallo Dogfish, hallo Norbert
In diesem Sinne, willkommen im Forum!
dem kann ich mich nicht anschließen. Für mich gehört es zu den glücklichen Momenten hier, wenn jemand nach einen schwierigen Anfang den Weg gefunden hat und des SELF-Gedanken verstehen und umsetzen lernt.
Viele Grüße
Antje
also Antje !!!!!
In diesem Sinne, willkommen im Forum!
dem kann ich mich nicht anschließen.
Da ist doch wohl ein Schreibfehler drin. Das Wörtlein "nicht" hattest du hier gewiß nicht schreiben wollen.
herzlich
Christoph S.
Hallo Ihr
In diesem Sinne, willkommen im Forum!
dem kann ich mich nicht anschließen.
Da ist doch wohl ein Schreibfehler drin. Das Wörtlein "nicht" hattest du hier gewiß nicht schreiben wollen.
richtig, definitiv ein Schreibfehler
zur Korrektur,
willkommen im Forum Dogfish,
wie du siehst, ist niemand vor Fehlern sicher
Viele Grüße
Antje
Hallo Antje.
In diesem Sinne, willkommen im Forum!
dem kann ich mich nicht anschließen.
Das kann ich jetzt aber gar nicht verstehen, vor allem in Bezug auf deine nächste Aussage.
Für mich gehört es zu den glücklichen Momenten hier, wenn jemand nach einen schwierigen Anfang den Weg gefunden hat und des SELF-Gedanken verstehen und umsetzen lernt.
Gut. Ich denke, das denke ich auch, sonst hätte ich dieses Posting wohl kaum auf den Namen "Jippie!" getauft. Die Willkommenheißung Dogfish's im Forum bezog sich darauf, dass ich im Vorfeld (</?m=64874&t=11703>) naja, sagen wir ich war ihm gegenüber untollerant, was darauf zurückzuführen war, dass er sich nicht so verhalten hat, wie es in diesem unserem Forum üblich ist, und er mir dementsprechend von Anfang an negativ aufgefallen ist.
Mit den Worten "Willkommen im Forum!" wollte ich nunmehr, da er sich an die Verhaltensregeln hält, zum Ausdruck bringen, dass ich weder etwas gegen seine Person, noch etwas gegen seine Teilnahme am Forumsleben habe, sondern mich lediglich von seinem vorhergehenden "Fehlverhalten", gestört fühlte.
Soweit.
Gruß
Norbert
siehste ...
Es handelt sich um einen Tippfehler, und zwar habe ich WHISTPER_TO statt WHISPER_TO geschrieben, also ein T zu viel
Das hätte ich auch rausgefunden, wenn ich den gesamten Quelltext zur Vewrfügung gehabt hätte. Deshalb hab ich darauf insistiert. Aber wenns nun klappt - ja, was machst du dann jetzt eigentlich, wenn dein Provider dir bereits seit zwei Monaten keinen Upload mehr gestattet?
Christoph S.
Hi Christoph,
Das hätte ich auch rausgefunden, wenn ich den gesamten Quelltext zur Vewrfügung gehabt hätte.
Daran sieht man, wie oft man Tippfehler macht, du hast Vewrfügung geschrieben.
»»Aber wenns nun klappt - ja, was machst du dann jetzt eigentlich, wenn dein Provider dir bereits seit zwei Monaten keinen Upload mehr gestattet?
Garnichts. Bzw., wenn du das meinst, ich programmiere auf meinem lokalen Rechner weiter, und schau es dann auf unserem Netzwerkserver an.
Ich bin aber gerade auf der Suche nach einem neuen Provider, wo das dann alles funktioniert, aber die meisten unterstützen kein PHP.
Gruß, Dogfish