kati: Eventhandling

Beitrag lesen

Hallo Thorsten,

ich kenne alle Lösungen, die du mir da vorgestellt hast. Komisch ist nur, dass es mit attachEvent in einer anderen Datei auch bei NS hinhaut ! Egal... addEventListener wird wiederum v. IE nicht kapiert und die 3. (unsauebere Methode) ist überhaupt nicht zuverlässig.
ok, ich versuche da etwas zusammenzubringen.
Sorry für den Code, aber wurde mir da schon vorgeworfen, dass ich nicht den ganzen Code gezeigt habe... wollte nur Missverständnisse und Antworten sowie "was soll das wo is der Code .."  verhindern.

danke.
gruss
kati

Hi Kati,

Mit attachEvent kann es irgendwie nicht zusammenhängen, weil in schon eine komplexe Maske auf diese Weise programmiert habe, auf welcher dynamische Elemente erzeugt werden, die "dynamisch" auch Botschaftsbehandlungsroutinen angehängt bekommen. Da ich aber zu Javascripten sehr mißtrauisch bin, bin ich schon auf alles gefaßt. Vielen Dank allen, die sich die Mühe gegeben haben, den Code zu lesen.
Für mein 2. Problem öffne ich nen neuen Thread ;-)

wenn ich dich richtig verstehe hast du es etwa so probiert.

<script language="JavaScript" type="text/javascript">

function init() {
  // für IE (ab 5.x)
  document.getElementById("Auswahl).attachEvent("onchange",doSomething);
  }
</script>

dann kann es sehr wohl an attachEvent liegen, da dies nicht standardkonform ist und soweit ich weiss nur vom IE unterstützt wird.

nachzulesen unter
http://www.msdn.microsoft.com/workshop/author/dhtml/reference/methods/attachevent.asp

<zitat>
Standards Information

There is no public standard that applies to this method.
</zitat>

Standardkonform wäre die Verwendung von der Funktion addEventListener();
http://selfhtml.teamone.de/dhtml/modelle/dom.htm#event_handling

und würde dann wie folgt aussehen ...
<script language="JavaScript" type="text/javascript">

function init() {
  document.getElementById("Auswahl").addEventListener("change",doSomething, true);
  }
</script>

dies wird aber weder vom NN 4.x noch derzeit vom IE unterstützt.

Der IE bietet dir die Funktion attachEvent als Alternative, beim NN 4.x funktionierst wie folgt

<script language="JavaScript" type="text/javascript">

function init() {
  document.Formular.Auswahl.onchange = handleOnchange;
  }
</script>

Diese Lösung funktioniert übrigens auch im IE als auch ab NN 6.x, ist aber net so sauber ;)

Dein Auszug der für das Problem relevanten Teile aus deinem Quelltext war etwas grosszügig gewählt, oder? ;)
gruss

Thorsten