Eventhandler verändern
DG
- javascript
Hi!
Mal sehen, ob ich das ordentlich beschrieben bekomme...
Ich habe einen Chat auf HTML - Basis. Er ist in verschiedene Frames eingeteilt. Javascript-Code kann ich nur in einem Frame eingeben, damit ja aber auf die anderen zugreifen.
Über ein weiteres Frame erfolgen die Eingaben. Ich würde gerne beim Absenden des Formulares automatisch vor den eingegebenen Text noch etwas einfügen. Den Quellcode des Eingabeframes kann ich nicht verändern. Ich stelle es mir also so ähnlich vor:
parent.info.formular.eingabe.value = "<font color='#00aa00'>"+parent.info.formular.eingabe.value;
Meines Wissens ist es ja aber nicht möglich, die Event-Handler (wie in diesem Fall "onsubmit") mit Javascript zu verändern. Ich habe schon überlegt, auf das Formular mit outerHTML zuzugreifen, aber das wäre ja jede Menge Text und würde nicht in jedem Browser laufen.
Kann mir jemand helfen?
Meines Wissens ist es ja aber nicht möglich, die Event-Handler (wie in diesem Fall "onsubmit") mit Javascript zu verändern. ...
Sicher kannst du den Ändern, ich sehe aber nicht wo du das versuchst?
Struppi.
Meines Wissens ist es ja aber nicht möglich, die Event-Handler (wie in diesem Fall "onsubmit") mit Javascript zu verändern. ...
Sicher kannst du den Ändern, ich sehe aber nicht wo du das versuchst?
Struppi.
Ach ja? Wie macht man das denn?
Ich habe es schon mit parent.info.onsubmit probiert... Ging aber nicht.
Da hier sicherlich einige sind, die sich damit auskennen wollte ich mich mit dem Code nicht blamieren *g*
Ach ja? Wie macht man das denn?
Ich habe es schon mit parent.info.onsubmit probiert... Ging aber nicht.
Da hier sicherlich einige sind, die sich damit auskennen wollte ich mich mit dem Code nicht blamieren *g*
Naja, wir können jetzt scheibchenweise versuchen zu klären was du falsch gemacht hast. Ich würd erstmal sagen, der erste Fehler dürfte die Verwendung des IE sein, ein Fomrular ist ein Objekt eines document und nicht von window (in der Annahme parent ist ein window)
Einen Eventhandler änderst du so:
[objekt referenz].onevent = function(e)
{
.....
}
Struppi.
ein Fomrular ist ein Objekt eines document und nicht von window
Das war ein Fehler, den ich nur hier im Forum gemacht habe. Im Chat hatte ich parent.info.document.form verwendet.
Einen Eventhandler änderst du so:
[objekt referenz].onevent = function(e)
{
.....
}
Jetzt verstehe ich nichts mehr. Ich habe eben einige Versionen probiert, allerdings ohne Erfolg. Das hier ist eine davon:
<html>
<body>
<form name="formular" method="get">
<input name=test value="ok">
<input type="submit" value="abschicken">
</form>
<script language="javascript">
document.formular.onevent= function(e){
//alert(e);
document.formular.test.value+='Hallo';
}
</script>
</body></html>
Habe das ganze etwas vereinfacht. Wenn es hier funktioniert, dann bekomme ich das sicher auch auf die Frames übertragen.
Eigentlich sollte dann ja nach dem Abschicken in der Adresszeile folgendes zu finden sein: ?test=okHallo
Bisher bei mir aber nicht.
Jetzt verstehe ich nichts mehr. Ich habe eben einige Versionen probiert, allerdings ohne Erfolg. Das hier ist eine davon:
<html>
<body>
<form name="formular" method="get">
<input name=test value="ok">
<input type="submit" value="abschicken">
</form>
<script language="javascript">
document.formular.onevent= function(e){
//alert(e);
document.formular.test.value+='Hallo';
}
</script>
</body></html>
onevent war ein Platzhalter, du meinst onsubmit (es gibt ja noch andere events)
Struppi.
onevent war ein Platzhalter, du meinst onsubmit (es gibt ja noch andere events)
Oh Klasse! Es funktioniert! Vielen Dank!
Ich bin mir nicht sicher...
parent.info.formular.onSubmit=einfuegen;
function einfuegen(e)
{
if(!e)
e=parent.info.event;
parent.info.formular.eingabe.value="text"+parent.info.formular.eingabe.value;
}
mfg
Genie