Doug Cassidy
Doug Cassidy

Reputation: 1907

jQuery Callback function won't take name of function(), must have an anonymous function

This works:

$("#formbottom").slideUp(speed,'swing',function(){
    openSubmitting();
});

This doesn't:

$("#formbottom").slideUp(speed,'swing',
    openSubmitting()
);

When you have a callback, do you always have to have an anonymous function in there? Can't you just put the function you want to call?

Upvotes: 5

Views: 1817

Answers (2)

Blender
Blender

Reputation: 298392

openSubmitting() calls your function. You don't want the result of your function. You want your actual function, which is why you write function() {...} instead of (function() {...})().

Since you want to pass a reference to your function, remove those parentheses:

$("#formbottom").slideUp(speed,'swing',
    openSubmitting
);

Upvotes: 10

dunli
dunli

Reputation: 1376

Have you tried jQuery("#formbottom").slideUp(speed,'swing',openSubmitting);?

Upvotes: 6

Related Questions