如何从setinterval函数返回一个值

时间:2013-12-06 12:26:57

标签: javascript php ajax setinterval

如何从setinterval函数返回一个值?

$.ajax({
        type : "POST",
        url:"<?php echo TESTMINE_APP_URL; ?>/ajax/export-details",
        data:'paginationHash='+paginationHash+'&exportType='+exportType+'&userId='+userId,
        dataType: "html",
        success: function(requestId) 
        {
            var myVar = setInterval(function(){checkStatusOfRequest(requestId)},9000);
            alert(myVar);
        }
        });

3 个答案:

答案 0 :(得分:0)

setInterval无法做到这一点。完成所需操作的更好方法是使用您希望在延迟函数中返回的值。像,

...
success: function (requestId) {
    setInterval(function () {
        var myVar = checkStatusOfRequest(requestId);
        alert(myVar);
    }, 9000);
}
...

答案 1 :(得分:0)

你不会在'myVar'变量中获得'checkStatusOfReques'的返回值

使用以下代码

    $.ajax({
    type : "POST",
    url:"<?php echo TESTMINE_APP_URL; ?>/ajax/export-details",
    data:'paginationHash='+paginationHash+'&exportType='+exportType+'&userId='+userId,
    dataType: "html",
    success: function(requestId) 
    {
        var myVar = setInterval(function(){

            var ReturnValue = checkStatusOfRequest(requestId)
             // This is your function return value
              alert(ReturnValue);

        },9000);
    }
    });

答案 2 :(得分:0)

最好将此resultId传递给将设置计时器的其他功能,然后您就可以使用直接值。