Internet Explorer appears to be the only major browser that does not support pushState to handle history for AJAX submissions. So everywhere I have:
$.bbq.pushState(hash);
in my AJAX code, I have to add another line:
$.ajax(hash);
This of course causes a double-submission in all non-IE browsers that DO support submission via pushState().
What can I do to avoid these double submissions?
Just call
$.ajax(hash);in a conditional statement only if thehistory.pushStateis not natively supportedI also suggest to refactor your code using a unique wrapper function accepting an hash as parameter with the necessary logic, e.g.