Domanda

strano fenomeno rilevato con JQuery 1.4.4 per FireF, Chrome, Safari (IE untestested). Obiettivo: aggiornare un elenco mentre l'utente digita un valore di filtro in un semplice, testo di input-box di base. Soluzione: bound evento KeyUp, leggere il valore del input-campo, applicare il filtro ... grosso modo:

$("#myinputfield").keyup(function(e) { myList.filter($(this).val()) });

funziona perfettamente sia per la digitazione e l'eliminazione tranne quando la cancellazione (del o backspace stesso effetto) l'ultima rimanente (== prima) char. in tal caso l'evento non viene affatto. Chiunque con un'idea su quale sia il problema e / o come risolverlo?

(P.S .: La mia soluzione sarebbe quella di cambiare dall'evento keyup vincolante ad un controllo periodico setTimeout fino a quando l'input-campo è attiva, ma che koxind di sente come una fuga sporca ...)

È stato utile?

Soluzione

Non riesco a riprodurre il problema. Forse è solo che la funzione di filtro non gestisce $(this).val() == '' molto bene. Dai un'occhiata a questo test rapido .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top