Ticket #5654 (closed bug: fixed)
Ajax callbacks and the this keyword
| Reported by: | IvanTheBearable | Owned by: | |
|---|---|---|---|
| Priority: | minor | Milestone: | 1.4 |
| Component: | ajax | Version: | 1.4a1 |
| Keywords: | callback | Cc: | |
| Blocking: | Blocked by: |
Description
Ajax callbacks have been changed to something along these lines:
s.success.call( callbackContext, data, status, xhr );
where callbackContext can be defined with a new "context" property of the ajax options.
In general, this is great. However, if a context is not specified, it defaults to window. In 1.3 the context of an ajax callback was the options object itself. It is documented like this:
======= function (data, textStatus) {
data could be xmlDoc, jsonObj, html, text, etc... this; the options for this ajax request
} =======
This is likely to break a lot of existing code. Perhaps defaulting the callbackContext to the options object would be better.
Cheers
Ivan
Change History
Please follow the bug reporting guidlines and use jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

Patch: http://github.com/dmethvin/jquery/commit/7eff9d96703b8a742746c581c432ffb8524c64c4