Ich habe einige Textfelder, die AJAX verwendet und verarbeiten, was der Benutzer während der Eingabe eingibt. Das Problem ist, dass der Prozess, der nach dem Eingeben passiert, ein ziemlich geladener Prozess ist. Gibt es trotzdem, dass ich das Ereignis 500 ms warten kann, bevor es das Ereignis erneut verarbeiten wird? Nehmen wir an, ich tippe a
und dann 200ms, nachdem ich bsdke
eingegeben habe. Das Ereignis verarbeitet nur a
, das hereinkommt. Sagen wir, dass ich dann asdf
600ms schreibe, nachdem ich a
tippte. Das Ereignis wird dann absdkeasdf
auslösen und verarbeiten, weil es 500ms nach dem letzten Prozess war.Wie mache ich jQuery warten nach Ereignis
Oder sogar, gibt es eine Möglichkeit, ich kann das Ereignis ausgelöst werden, bis das vorherige Ereignis, das ausgelöst wurde, beendet hat, was es getan hat?
Ist es möglich? Sicherlich wird es am Ende nicht funktionieren, eine Timeout-Funktion anzubringen, oder?
$('#selection1-3-4-a, #selection1-3-4-b, #selection1-3-4-c, #selection1-3-4-d, #selection1-3-4-e, #selection1-3-4-f').on('input', function (e) {
var url = "/ex.php";
$.ajax ({
//......
});
ja, es Entprellung oder Drosselung genannt wird (je nachdem, ob Sie es wollen die erste Anforderung zu senden, und eine alle n ms, oder wenn Sie wollen es nicht senden, bis n ms ohne Eingabe übergeben haben) –
Wird die gesamte eingegebene Zeichenfolge auf dem Bildschirm angezeigt, während sie eingegeben wird, oder wird auch die Anzeige verzögert? – nurdyguy