var alguem_mexeu_no_meu_queijo = false;
No evento change de qualquer elemento, alteramos essa variável, para sabermos que o usuário mexeu no formulário:
$('select, input, textarea').change(function(){
alguem_mexeu_no_meu_queijo = true;
});
Depois, no evento beforeunload da janela, precisamos ver se a variável foi alterada.
Se sim, damos o alerta, perguntando se ele quer mesmo sair.
window.onbeforeunload = function(){
if(alguem_mexeu_no_meu_queijo==true)
{
return 'Alguém mexeu no meu queijo.';
}
}
Ah, quando o usuário envia o formulário, precisamos setar a variável como true, para que não apareça o alerta.
Se tu tiver usando o jquery validation, fica assim:
$('#form').validate({ , submitHandler: function(form) {
alguem_mexeu_no_meu_queijo
= false; form.submit(); } });
Nenhum comentário:
Postar um comentário