Ergebnis 1 bis 6 von 6

Thema: Strict verstehen, Teil 7: Die Separation der Ebenen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat
    Bei mir hat's dann nämlich erst geklappt, wie ich's auch in den Abschick-Link geschrieben habe, und da auch nur als "onclick = 'return Validiere();'". o_O' Heißt das, ich habe mich bloß irgendwo vertippt, oder kann's sein, dass das noch unzureichend implementiert ist?
    Abschick-Link?
    Ich glaube nicht, dass es an der Implementierung liegt, Prüfungen wie diese sind eigentlich Ur-JavaScript.

    Habe schnell getestet: Opera (9.1), Firefox (1.5) und Internet Explorer 7 rufen Validate() auf bei <botton type="submit"> und <input type="submit" />.
    Alle drei senden das Formular ohne Prüfung, wenn das Formular über einen Verweis (href und onclick) per submit() abgesendet wird.

    Ich denke der Fehler lag bei dir.
    onsubmit="return Funktion();" in <form>. Die Funktion muss entweder true oder false zurückgeben. Ausgewertet wird dabei nur das erste return der Funktion. Hast du also zuerst return true; gesagt und revidierst das später in der Funktion zählt dennoch true.

    (War das verständlich?^^)

    Zitat Zitat
    Ich kenne mich auch nicht so gut mit JS aus, aber kann sein, dass es sowas wie "element.onclick = '...'" gibt. Inwieweit das aber standardkonform ist, weiß ich nicht, bei SelfHTML z.B. steht nichts davon.
    Ich habe vor kurzem im SELFHTML-Forum von window.onload = x; gelesen, aber ich verbreite ungern Teilinformationen.

  2. #2
    Zitat Zitat von mitaki Beitrag anzeigen
    Ich denke der Fehler lag bei dir.
    onsubmit="return Funktion();" in <form>. Die Funktion muss entweder true oder false zurückgeben. Ausgewertet wird dabei nur das erste return der Funktion. Hast du also zuerst return true; gesagt und revidierst das später in der Funktion zählt dennoch true.
    Das ist mir schon klar, ganz bescheuert bin ich auch nicht. Allerdings bin ich anscheinend teilweise bescheuert, da ich's wirklich per Link "form.submit ()" gemacht habe und dachte, da wird das trotzdem überprüft. :-/
    Naja, ich habe dann halt einfach gleich die Prüf-Funktion in den Link geschrieben und ein Submit an ihr Ende, so ging's.
    Und jetzt bin ich wieder gescheiter. ^^
    Zitat Zitat
    Ich habe vor kurzem im SELFHTML-Forum von window.onload = x; gelesen, aber ich verbreite ungern Teilinformationen.
    Ist auch besser so, ich kann da wie gesagt auch nicht helfen. Und solange das nirgends steht, kann wohl auch keiner verlangen, dass du die HTML/JS-Trennung so weit treibst.

  3. #3
    Zitat Zitat
    Naja, ich habe dann halt einfach gleich die Prüf-Funktion in den Link geschrieben und ein Submit an ihr Ende, so ging's.
    Alternativ würde ich empfehlen, ein button-Element als Link zu formatieren, damit auch nicht-JavaSvript-fähige Browser etwas von dem Formular haben.

  4. #4
    Ereignisse eines Element kann man mithilfe von der Methode addEventListener() abfangen:
    Code:
    element.addEventListener(String eventType, Function handler, Boolean useCapture);
    Im Internet Explorer funktioniert es mit der Methode attachEvent():
    Code:
    element.attachEvent(String event, Function handler);
    Es gibt auch die Möglichkeit, den Elementen direkt über Attribute die Handler zuzuweisen:
    Code:
    element.onclick = function(e) { alert('test') };
    Die Namen entsprechen die den HTML Attributen bis auf die Tatsache, dass sie klein geschrieben werden.

    Mehr Informationen gibt es hier und hier.

    @topic
    Mal wieder ein interessanter Artikel, mitaki

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •