2 Stimmen

Wie kann man die Anzahl der serverseitigen Aufrufe verfolgen, die bei der Verwendung der Remote-Methode von jQuery Validate gemacht werden?

Ich bin mit jQuery Validate für mein Formular Validierung. Ich mache einen Ajax-Aufruf, um einige Daten zu überprüfen und brauchen eine Möglichkeit, zu verfolgen, wie viele Versuche oder Anrufe an den Server gemacht werden.

Wenn ein Benutzer beispielsweise zum ersten Mal einige Zeichen in ein Eingabefeld eingibt und dann das Feld verlässt, wird ein Anruf an den Server getätigt, um festzustellen, ob true oder false zurückgesendet wird. Nach dem ersten Versuch heißt es: "Das war Ihr erste Versuch.

Wie kann ich es so einrichten, dass es heißt, dies war Ihr zweite Versuch nach dem nächsten Versuch, dritte usw. Ich brauche auch eine Möglichkeit, das Eingabefeld nach fünf Versuchen ganz zu entfernen.

$("#my-form").validate({
    rules : {
        username : {
            required : true,
            remote : "username.php"
        },
    }
});

1voto

amit_g Punkte 29895

Eine Möglichkeit wäre die Verwendung eines der Globale Ajax-Ereignishandler

$(document).ajaxComplete(function(event, request, settings) {
    var urlToLog = "username.php";

    console.log('Triggered ajaxComplete handler.');

    if (settings.url.indexOf(urlToLog) != -1) {
        console.log('Ajax call for ' + urlToLog + ' completed.');
        // Increment the count here
    }
});

Wenn die gleiche Url "username.php" auch in anderen AJAX-Aufrufen verwendet wird, erhalten Sie keine korrekte Zählung. In diesem Fall müssen Sie die Url irgendwie eindeutig machen oder eine andere Methode verwenden, um zu wissen, wann gezählt werden soll und wann nicht.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X