Waiting on multiple asynchronous calls to complete before continuing
        Posted  
        
            by Chad
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Chad
        
        
        
        Published on 2010-05-04T19:17:42Z
        Indexed on 
            2010/05/04
            19:38 UTC
        
        
        Read the original article
        Hit count: 354
        
So, I have a page that loads and through jquery.get makes several requests to populate drop downs with their values.
$(function() {
    LoadCategories($('#Category'));
    LoadPositions($('#Position'));
    LoadDepartments($('#Department'));
    LoadContact();
};
It then calls LoadContact(); Which does another call, and when it returns it populates all the fields on the form. The problem is that often, the dropdowns aren't all populated, and thus, it can't set them to the correct value.
What I need to be able to do, is somehow have LoadContact only execute once the other methods are complete and callbacks done executing.
But, I don't want to have to put a bunch of flags in the end of the drop down population callbacks, that I then check, and have to have a recursive setTimeout call checking, prior to calling LoadContact();
Is there something in jQuery that allows me to say, "Execute this, when all of these are done."?
© Stack Overflow or respective owner