Reputation: 305
I have function which is call recursively by ajax complete callback, and I need to set parameters fot this function. But how do I transfer parameters in callback?
function poll(url, data, pollDelay, type){
$.ajax({ url: url, type: 'POST', data: data, success: function(data){
if(data != '' && type == 1) { //do answers
doOutput(data);
}
}, dataType: 'html', complete: pollTimeout = setTimeout('poll()', pollDelay), timeout: 30000 });
}
function doPoll() {
clearTimeout(pollTimeout);
poll('url/f.php', obj = { id: someId, data: somedata }, 10000, 1);
}
Thanks a lot
Upvotes: 0
Views: 63
Reputation: 324620
I'm assuming you're referring to your setTimeout
call? Never pass a string to setTimeout
.
pollTimeout = setTimeout(function() {poll(url,data,pollDelay,type);},pollDelay);
Note that your whole "complete" thing should be in such a function:
$.ajax({...
complete: function() {
pollTimeout = setTimeout(...);
}
...});
Upvotes: 2