Per qualche motivo jQuery.off ('click') non sembra funzionare qui. Quando si fa clic sul pulsante "Sì" nel modello, viene visualizzato un altro modello. Che cosa sto facendo di sbagliato?jQuery.off() non rimuove il binding
codice:
$(function(){
//If there are warnings on the page bind alert
if ($('.renewal-warning').length > 0){
(function(){
$('#signRentalContainer').on('click', '.renewal-warning', function(e){
var buttonHandle = this;
//Prevent submission
e.preventDefault();
//Show warning model
$.modal({
content: $('#renewalWarning').html(),
title: "Order Renewal Warning",
buttons: {
'Yes': function(win) { $(buttonHandle).off('click').click(); },
'No': function(win) { win.closeModal(); }
},
maxWidth: 250,
closeButton: false
});
});
})();
}
});
Perché non è la maniglia che lavorano in questo caso, però? Pensavo che jQuery avesse cambiato lo scope per abbinare l'evento? – Steven
@Steven: Oh, è per questo che stai facendo il '.off()'? Immagino che l'evento stia bollendo. Invece di 'off()', prova ad aggiungere 'e.stopPropagation()' al gestore. –
... o forse a causa del '.click()' che stai facendo sull'elemento che era già stato cliccato. Perché è lì? Prova a rimuoverlo. –