Вот решение, которое я использовал, и работает сказочно. Я использую $ (this) .text () вместо этого, потому что я просто использую один div строки, который доступен для редактирования. Но вы также можете использовать .html () таким образом, вам не нужно беспокоиться об объеме глобальной / неглобальной переменной, а перед этим привязывается к редактору div.
$('body').delegate('#editor', 'focus', function(){
$(this).data('before', $(this).html());
});
$('#client_tasks').delegate('.task_text', 'blur', function(){
if($(this).data('before') != $(this).html()){
/* do your stuff here - like ajax save */
alert('I promise, I have changed!');
}
});