jQuery textbox.val ( 'xxxx') senza causare cambiamenti al fuoco?
Domanda
Ho il seguente codice jQuery in atto sulla mia pagina:
var isChanged = false;
$(document).ready(function()
{
$('.change').change(function() {
isChanged = true;
});
});
Sto usando un plugic che modifica il valore della casella di testo è collegata ad usare:
target.val('xxxx');
la casella di testo in html (da asp.net) è:
<input name="ctl00$cphHolder1$rptFlex$ctl01$txtLeftRank"
type="text"
value="52°"
id="ctl00_cphHolder1_rptFlex_ctl01_txtLeftRank"
class="change atiselector" />
Quando il valore della casella di testo viene modificato utilizzando il codice, il cambiamento non è sparando. Se digito nella casella di testo, i fuochi di cambiamento. Che cosa mi manca?
Soluzione
Questo è il modo in cui funziona. Se è necessario il cambiamento di valore per attivare l'evento "cambiamento", si può esplicitamente farlo:
$('input#whatever').val('hi').change();
Altri suggerimenti
$('.change').change()
scatterà l'evento. Basta cambiare gli attributi non genera l'evento.
L'evento cambiamento si verifica quando un controllo perde il focus e il suo valore è stato modificato dopo guadagnando attenzione.
Ciò significa che il cambiamento evento è stato progettato per sparare sui cambiamenti da interazione con l'utente. modifiche programmatiche non provoca questo evento per essere licenziato.