Rilevamento dell'evento di rilascio nell'input (testo) tramite Javascript
-
06-07-2019 - |
Domanda
Atleast che definisce il mio problema è semplice ... Ho un controllo di input (testo) e una funzione javascript, che tronca il testo nel controllo di input a 15 caratteri. cioè se la lunghezza supera il limite, sinistra (testo, 15) viene ripristinata al controllo.
Questo è gestito attraverso l'evento onkeyup ...
Ora, quando l'utente trascina e rilascia il testo direttamente nel controllo Input, l'evento non viene generato poiché non è coinvolta alcuna tastiera. In tal caso, quale evento viene generato ... o come eseguo la funzione javascript in quello scenario.
Soluzione
Ad eccezione di onkeyup, prova a gestire anche onmouseup . Dovrebbe attivarsi quando si rilascia il pulsante del mouse nella casella di input (in altre parole, quando si rilascia il testo).
Modifica: apparentemente onmouseup si attiva solo se è stato fatto clic anche sul pulsante del mouse nella casella di input, ma onfocus dovrebbe attivarsi quando la casella di input riceve lo stato attivo quando si rilascia il testo.
Esempio:
document.getElementById('elementid').onkeyup = function()
{
// Restrict value length to 15 characters
};
document.getElementById('elementid').onfocus = document.getElementById('test').onkeyup;