Unterschied zwischen der Behandlung von $ ("form"). submit oder einem input type="submit" click event?

8

Sagen Sie, ich habe den folgenden HTML-Code:

%Vor%

Und ich habe eine JavaScript-Methode validate , die die Formularfelder für verschiedene ungültige Szenarien überprüft und true zurückgibt, wenn alles gut ist oder false , wenn etwas nicht stimmt.

Gibt es zwischen jQuery und jQuery einen wirklichen Unterschied zwischen diesen Schritten?

%Vor%

... oder tu dies:

%Vor%

Und gibt es irgendwelche Vorteile / Nachteile zwischen den beiden?

    
AJ. 08.10.2012, 15:58
quelle

3 Antworten

13

Der Klick-Callback wird nur aufgerufen, wenn der Benutzer tatsächlich auf den Senden-Button klickt. Es gibt jedoch Fälle, in denen Sie das Formular automatisch per Javascript senden würden. In diesem Fall wird der Klick-Callback nicht ausgelöst, während der Rückruf gesendet wird. Ich würde empfehlen, immer das Submit für die Validierung und die eigentliche Aktion des Formulars zu verwenden, während Sie den Klick-Callback für Animationen oder andere Dinge verwenden, die mit der Aktion des Klickens auf die Schaltfläche zusammenhängen.

    
Agi Sferro 08.10.2012, 16:02
quelle
2

Klick-Ereignisse werden früher ausgelöst, das Sende-Ereignis wird nach dem Klick-Ereignis ausgelöst.

Absenden:

  • Es könnte zu spät sein, das Ereignis zu blockieren, wenn einige Daten falsch sind (kleinerer und alterer Browser)
  • Triggert auch beim Senden des Befehls

Klicken Sie auf

  • Überwältigende Ereignisse, fast alles ist mit Klick verbunden. Leistung?
  • Wird beim Senden nicht ausgelöst
Eun 08.10.2012 16:02
quelle
1

Der Vorteil der ersten Methode besteht darin, dass wenn das Formular über mehrere Schaltflächen gesendet wird oder verschiedene Aktionen ausgeführt werden, das Formular bei der Übergabe über die anderen Methoden in einem ungültigen Zustand sein kann / p>

Die beste Methode besteht darin, die Validierung bei der Formularübergabe vorzunehmen, da die Validierung dann immer noch ausgelöst wird, unabhängig davon, wie das Formular übermittelt wird (per Knopfdruck, programmgesteuert von woanders aus).

    
Rory McCrossan 08.10.2012 16:02
quelle

Tags und Links