mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 14:50 Benutzername: Passwort: Auto-Login

Thema: 2 funktionen onSubmit mit return vom 16.04.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> 2 funktionen onSubmit mit return
Autor Nachricht
Ascend
Threadersteller

Dabei seit: 04.09.2008
Ort: Bayern
Alter: 55
Geschlecht: Männlich
Verfasst Do 16.04.2009 09:38
Titel

2 funktionen onSubmit mit return

Antworten mit Zitat Zum Seitenanfang

es geht um ein formular.
ich habe dazu 2x javascript welche abgefragt werden.
das erste überprüft ob alles korrekt eingegeben wurde und das 2. überprüft eine kleine rechenaufgabe ob die korrekt gelöst wurde.

das habe ich jetzt versucht so zu lösen:
Code:
onSubmit="checkit(this); return Kontrolle01();"

das funktioniert soweit. nur wenn der user zuerst die aufgabe löst und auf senden klickt kommt zwar die meldung das der name usw nicht korrekt eingegeben wurde, sendet aber trotzdem.

das hab ich jetzt versucht so zu lösen:
Code:
onSubmit="return (checkit(this) && return Kontrolle01());"

da macht er gar keine überprüfung
und ich habe noch versucht
Code:
onSubmit="return (checkit(this) && Kontrolle01());"

hier wiederum kontrolliert er nur ob die angaben richtig sind, aber nicht die zu lösende aufgabe

kann mir einer nen tipp geben was falsch ist?
wie ich 2 funktionen in einem onSubmit einfüge?
  View user's profile Private Nachricht senden
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst So 19.04.2009 02:27
Titel

Re: 2 funktionen onSubmit mit return

Antworten mit Zitat Zum Seitenanfang

Hiho!
Code:
onSubmit="checkit(this); return Kontrolle01();"

Wenn du inline-Eventhandler (onsubmit-Attribut) benutzt, muss das return auch in diesem Handler stehen. Die Ergebnisse der Funktionen werden sonst nicht berücksichtigt.

Code:
onSubmit="return (checkit(this) && return Kontrolle01());"

Hier benutzt du das return (allerdings ist das zweite return innerhalb der Klammern verwirrend). Aber du verwendest Ampersands (&&) in einem Elementattribut. Das geht nicht bzw. sollte vermieden werden, da HTML-Entitäten durch das Ampersand gekennzeichnet sind (Sonderzeichen und so; € z.B.). Einige Browser sind da nachsichtig, aber der IE z.B. gibt 'nen Fehler aus.

Code:
onSubmit="return (checkit(this) && Kontrolle01());"

Hier ist im Grunde alles ok, wären da nicht die Ampersands. Funktioniert sogar im Firefox, glaube ich. Der IE aber, wie oben geschrieben, spielt nicht mit.

Am besten also eine Wrapperfunktion benutzen:
Code:
function check_all()
{
    return (checkit(this) && Kontrolle01());
}

Code:
onSubmit="return check_all();"


Eine elegantere Möglichkeit wäre noch:
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
    <title>test</title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Language" content="de-DE" />
</head>
<body>

    <form id="the-form"
          action="bla.htm"
          method="post"
          enctype="application/x-www-form-urlencoded">
        <div>
            <input type="text" name="username" id="username" />
            <input type="submit" />
        </div>
    </form>

    <script type="text/javascript">
    var the_form = document.getElementById('the-form');
    the_form.onsubmit = check_it;
    function check_it(event)
    {
        var evt = event || window.event;
        alert(evt);
        if (evt.preventDefault)
        {
            evt.preventDefault();
        }
        else
        {
            evt.returnValue = false;
        }


    }
    </script>

</body>
</html>

Infos dazu findest du hier: http://forum.mootools.net/viewtopic.php?id=6372
Und quirksmode hat auch noch viele, nützliche Sachen rund um Events.

Hoffe, das löst dein Problem! Lächel
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Ascend
Threadersteller

Dabei seit: 04.09.2008
Ort: Bayern
Alter: 55
Geschlecht: Männlich
Verfasst Do 30.04.2009 11:34
Titel

Antworten mit Zitat Zum Seitenanfang

danke dir dafür.
sehr erklärend beschrieben *zwinker*
  View user's profile Private Nachricht senden
 
Ähnliche Themen Formular wartebild bei onsubmit geht nicht wegen validierung
XML - Return im Code
PHP->return statt klicken im Formular
[PHP] function return, fehler [solved]
[php] return wird nicht ausgeführt
Erledigt! [PHP]Return stoppt Script
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.