jQuery / Ajax - $.ajax() Passing Parameters to Callback - Good Pattern to Use?
Like this...
function doSomething(url, elem) {
$.ajax({
type: "GET",
url: url,
dataType: "xml",
success: function(xml) {
rssToTarget(xml, elem);
}
});
}
Answer to your comment: Does use of anonymous functions affect performance?
The pattern you'd like to use could work if you create a closure inside your rssToTarget function:
function rssToTarget(element) {
return function (xmlData) {
// work with element and the data returned from the server
}
}
function doSomething(url, elem) {
$.ajax({ type: "GET",
url: url,
dataType: "xml",
success: rssToTarget(elem)
});
}
When rssToTarget(elem)
is executed, the element parameter is stored in the closure, and the callback function is returned, waiting to be executed.