Ich möchte ein Ereignis auslösen, sobald ich aufhöre, Zeichen (nicht während der Eingabe) in mein Eingabetextfeld einzugeben.
Ich habe versucht mit:
$('input#username').keypress(function() {
var _this = $(this); // copy of this object for further usage
setTimeout(function() {
$.post('/ajax/fetch', {
type: 'username',
value: _this.val()
}, function(data) {
if(!data.success) {
// continue working
} else {
// throw an error
}
}, 'json');
}, 3000);
});
In diesem Beispiel wird jedoch für jedes eingegebene Zeichen eine Zeitüberschreitung erzeugt, und ich erhalte ungefähr 20 AJAX-Anforderungen, wenn ich 20 Zeichen eingebe.
Auf dieser Geige zeige ich das gleiche Problem mit einer einfachen Warnung anstelle einer AJAX.
Gibt es eine Lösung dafür oder verwende ich dafür nur einen schlechten Ansatz?