Javascript 我认为这是个问题

Javascript 我认为这是个问题,javascript,jquery,Javascript,Jquery,我像许多初学者一样来到这里:因此,我将毫不浪费时间地解释我的问题 -演示网站。有2个用户等 sekret - demo demo - demo (用于登录)如果您将看到任何错误-将很高兴知道有机会解决它。 当用户关闭(Išj.-按钮)时,演示用户会看到日志:等待学生(Laukiama studento) sekret打开(Įjungt-按钮)后,一切似乎正常,演示用户看到活动用户,单击下一个后,会发出警报,提示已更改的学生,如果您想更新信息(查看新信息)。。关闭后(Išj.按钮)在除IE之

我像许多初学者一样来到这里:因此,我将毫不浪费时间地解释我的问题

-演示网站。有2个用户等

sekret - demo 
demo - demo 
(用于登录)如果您将看到任何错误-将很高兴知道有机会解决它。 当用户关闭(Išj.-按钮)时,演示用户会看到日志:等待学生(Laukiama studento)

sekret打开(Įjungt-按钮)后,一切似乎正常,演示用户看到活动用户,单击下一个后,会发出警报,提示已更改的学生,如果您想更新信息(查看新信息)。。关闭后(Išj.按钮)在除IE之外的所有浏览器中都能正常工作。。clearInterval似乎不起作用,在发送了大量查询和响应后,它会弹出多个警报窗口。。 希望你明白我的意思

var sid = "{$i->sid}";
var mid = "{$i->mid}";

var update_st = setInterval(function(){
    $.post(
        'ajax/check-student.php',
        { sid: sid, mid: mid },
        function(resp){
            if(resp == "next") {
                var cf = confirm('Buvo pakeistas studentas besiginantis darbą. Ar rodyti sekantį studentą?');
                clearInterval(update_st);

                if (cf) {
                    window.location = "?";
                } 
                else {
                alert('Kai norėsite perjungti kitą vartotoją, prašome perkrauti puslapį.');
                clearInterval(update_st);
            }
        } 
        else if (resp == "none") {
            alert("Gynimas baigtas. Ačiū už dalyvavimą vertinimo komisijoje.");
            clearInterval(update_st); // this place not works..
            window.location = "?";
        }
    });
}, 250);
测试了很多次。。似乎有时工作正常。。在IE9上测试


当然,也许有人能提供其他想法来做同样的事情吗?没有每秒发送到文件的许多查询…

您可以使用setTimeout而不是setInterval,原因很多。。。 所以您将调用创建setTimeout的函数!并且这个方法将保证在完成对服务器的查询时,您的代码将被执行

var a = function(){
    var timer = setTimeout(function(){
        // ok your ajax query success of error whatever
        a();
        console.log(2)
    }, 1000);
}

a();
您必须将查询放在setTimeout内,并在查询完成后调用函数


所以

很高兴知道你想在这里做什么。因为您的代码似乎有点奇怪:)Kadangi Tu lietuvis galiu paaiškint paprašiau lietuviškai:D Esmė:Darbųvertinima komisijoje。T.y.sedi komisija,žmogus ginasi darbąo komisija vertina。我是一名学生。科勒·恩吉拉(Kol studento nėra)是一名来自内荣塔斯(sistema tikrina ar dar neijungtas)的学生,他是一名学生——吉·伊克拉纳(ji ikrauna)。。kad nebutu window.location.reload()kolįjungs.o ar patikrinai kokįresponseOne tau grąžžina?如果(响应==“无”)苏韦基亚(Suveikia)是一辆20辆以上的卡丁车,那么这辆卡丁车将是一辆警车。每道净水。。把suveike赌给komentadas。无论如何,多苏+伊尔陶,卡德·内帕廷(jai pažiūrėt.Tiesiog pasiskaityt gali@DonnyLive很高兴能帮上忙()()))