Hallo
Deine Funktion muss false zurückgeben, dann wird das reguläre submit unterdrückt.
Als Rückgabewert eines Eventhandlers false zu bestimmen um eine Standardaktion zu unterdrücken ist finsteres Mittelalter. Das sollte weder praktiziert noch empfohlen werden. Erstens ist es schlecht für die Lesbarkeit des Codes und zweitens entspricht es nicht dem standardisierten Ereignismodell des DOM. Darum schlägt diese Variante meines Wissens auch bei Eventhandlern fehl, die mittels addEventListener registriert wurden, was aber aus mehreren Gründen die grundsätzlich zu empfehlende Methode ist.
function handler (event) {
if (event.cancelable) {
console.info('event is cancelable');
event.preventDefault( );
if (event.defaultPrevented) {
console.info('default action prevented');
}
}
}
Darüber, ob eine Standardaktion unterdrückt werden kann, gibt der Wert der Eigenschaft cancelable des Eventobjektes auskunft, das Aussetzen der Aktion erfolgt mit der Methode preventDefault, und ob die Operation erfolgreich war, lässt sich am Wert der Eigenschaft defaultPrevented ablesen.
Gruß,
Orlok