Я пытаюсь опросить базу данных для значений нескольких столбцов, функция опроса работает. Однако я хотел бы иметь возможность использовать отложенную функцию, чтобы функция, вызывающая функцию опроса, знать, когда она будет завершена. Используя то, что я ниже я получаю либо не имеет никакого метода «решительности» или не имеет методы «обещания» ошибкаопрос с jQuery отложен
//how I call the poll function
poll(Guids.Creation,$.Deferred);
var poll = function (guid,defer) {
var timeOut = 3000,
url = 'handler.ashx',
data = {
cmd : 4 ,guid : guid
};
App.Generic.ajax(url,"GET", this, data).done(function (data) {
var orderStatusJSON = $.parseJSON(data);
if (orderStatusJSON.hasOwnProperty('dateFinished') && orderStatusJSON.dateFinished === '') {
setTimeout(function(){poll(guid,defer)}, 3000);
} else {
if (orderStatusJSON.hasOwnProperty('output')) {
var successRegEx = /\bsuccess\b/i,
errorRegEx = /\berror\\b/i;
if(successRegEx.test(orderStatusJSON.output)) {
defer.resolve(orderStatusJSON);
} else if (errorRegEx.test(orderStatusJSON.output)) {
defer.resolve(orderStatusJSON);
} else {
defer.resolve(orderStatusJSON); //execute statement
}
}
}
});
return defer.promise();
};
является $ .Deferred переменной набор на экземпляр объекта, который имеет методы «рассосется» и «обещание»? – sjkm
Я вижу, что вы имеете в виду, мне нужно $ .Deferred() not $ .Deferred – Timigen