Nella mia esperienza, l'evento input type="text"
onchange
si verifica in genere solo dopo aver lasciato il controllo (blur
).Il modo migliore per tracciare onchange as-you-type in input type = "text"?
C'è un modo per forzare il browser per attivare onchange
ogni volta textfield
modifiche di contenuto? In caso contrario, qual è il modo più elegante per tracciare questo "manualmente"?
L'utilizzo degli eventi onkey*
non è affidabile, poiché è possibile fare clic con il pulsante destro del mouse sul campo e scegliere Incolla, e questo cambierà il campo senza alcun input da tastiera.
È setTimeout
l'unico modo? .. :-) Ugly
Non hai controllato oninput in IE (non ce l'ho su un Mac)? Perché il controllo dell'inserimento stesso non è sufficiente: puoi selezionare e tagliare, ad esempio. Grazie. –
'onkeypress' dovrebbe essere usato al posto di' onkeydown'. 'onkeydown' si attiva quando si fa clic su una chiave. Se un utente tiene premuto un tasto, l'evento scatterà una sola volta per il primo carattere. 'onkeypress' si attiva ogni volta che un carattere viene aggiunto al campo di testo. – fent
Non è abbastanza magico fare il fuoco "onchange" su tutte quelle azioni. ' 'farà abbastanza bene per la maggior parte. – aroth