Ich habe eine clientseitige JavaScript-Validierung für ein Formular. Es funktioniert großartig. Aber ich möchte Benutzer unterbringen, die JavaScript deaktiviert haben. Meine Validierung wird nicht vom Attribut onsubmit des Formulars ausgeführt. Es handelt sich um einen Ereignishandler, der an eine normale Schaltfläche im Formular gebunden ist. So ist der Knopf, der die Validierung schlägt und einreichen aus ist nicht wirklich eine einreichen, es ist nur type = „button“:Submit-Ereignis unterdrücken/Submit-Schaltfläche nur aktiviert, wenn JavaScript deaktiviert ist
<input type="button" value="Ok" class="okbtn">
Dann melde ich mich an einen Event-Handler zu seinem Click-Ereignis, das meine Validierung der Fall ist. Sie macht geltend, wenn alles passiert:
function clickHandler(event){
thisForm = event.data.caller
var valid = submitValidation(thisForm);
if (valid == true){
thisForm.submit();
} else{
}
}
Mein Problem ist, wenn der Benutzer JS deaktiviert ist, gibt es keine Möglichkeit das Formular abzuschicken. Ich könnte die Schaltfläche type="submit"
machen, die für die JS-deaktivierten Benutzer funktionieren würde, aber dann wird es immer das Formular senden und die Validierung für die JS-aktivierten Benutzer umgehen. (Die Validierung wird ausgeführt, wird jedoch trotzdem gesendet). Wenn ich die Schaltfläche type="submit"
mache, kann ich das Submit-Ereignis blockieren, wenn es angeklickt wird? Ich benutze JQuery, kann JQuery das Senden unterdrücken? Ich möchte, dass meine Validierung prüft, ob sie übermittelt wird.
süß. Eine Zeilenänderung :) – Purrell