As I understand you have the problem that some information you send
via AJAX is been sended two, tree, etc. times because the user gets
desperate and can't wait a couple of seconds. If that's you case,
happened to me too. I solved with blockUI. I blocked, pages, or even
part of a page (specifically divs), so they have to wait until it
success the ajax. Other option I recommend is that you adding the $
('...').attr('readonly','readonly'). The advantage from the first to
the second, is that you can say to the client: "Wait, we are
performing your request" or some personalized message and add an image
or something else (usually I just add a loading gif).