Write a little intermediary function and call your div updates using it
var loadPartial = function(target, url, asyncPromise){
if(asyncPromise){
asyncPromise().done(function(){target.load(url)});
}else{
target.load(url);
}
}
You can then update your values via AJAX safely before the div is loaded, or not pass a callback if that's not appropriate for a particular navigation. Using $(button).click for the save of ease, I don't know what your navigation event looks like.
$(button).click(function(){
loadPartial($(div),this.url,$.ajax({.../*update your database*/}));
});
It's not the prettiest thing, but it's flexible.
"There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli