5 Stimmen

Ereignis ausgelöst durch Rücktaste, aber nicht durch Löschtaste

Ich habe ein Formularfeld, das das jQuery-Plugin "Autocomplete" von Jorn Zaefferer verwendet. Wenn ich einen Text eingebe, dann einen Teil davon auswähle und die Rücktaste drücke, wird die Autocomplete-Liste aktualisiert. Wenn ich aber statt der Rücktaste auf Löschen drücke, verschwindet die Autovervollständigungsliste.

Ich schaue mir den Code für das Plugin an, und es sieht so aus, als ob die automatische Vervollständigung durch ein Keydown-Ereignis im Feld ausgelöst wird, und sowohl die Rücktaste als auch das Löschen lösen einen Keydown aus.

Gibt es einen grundlegenden Unterschied zwischen Rücktaste und Löschen, der dies verursachen könnte?

4voto

Nick Craver Punkte 609016

Wenn Sie sich die onChange() Methode , Del hat einen besonderen Zweck - das Ausblenden der Autovervollständigungsliste:

function onChange(crap, skipPrevCheck) {
    if( lastKeyPressCode == KEY.DEL ) {
        select.hide();
        return;
    }

Also nein, es gibt keinen grundlegenden Unterschied im Ereignisverhalten hier, das ist nur, wie das Autovervollständigungs-Plugin konzipiert ist, die Löschtaste ist speziell dazu gedacht, die Liste auszublenden.

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