Если вы используете запрос get, ответ будет кэширован. Чтобы облегчить проблему с кешем, вам нужно убедиться, что URL уникален. Вы можете сделать это, каждый раз добавляя в URL уникальный фиктивный элемент строки запроса, или лучше используйте метод .ajax и укажите cache: false.
Я бы не использовал asynch: false, так как это блокирует пользовательский интерфейс, и если ответ не возвращается или задерживается, пользователь в конечном итоге вынужден аварийно завершить работу и не решит проблему с кэшированием.
$(".hdr a[id]").mousedown(function(e){
var url = "/g/click/" + this.id;
$.ajax({
url: url,
cache: false,
success: function(data){
//do something with the response
}
});
});
N.B
Я также могу испытать желание поместить вызов setTimeout в ваш скрипт. Это позволит вам очистить тайм-аут в случае быстрой смены другого события mousedown.
Это предотвратит отправку запросов xhr, если пользователь несколько раз отключал.