繁体   English   中英

如果id == 1,则以下jQuery代码将不起作用

[英]If id == 1, the following jQuery code will not work

我有一个称为fArea的DIV,当我单击打开按钮时,它设置为fo = 2,但是代码仍然刷新,因此我尝试添加if和else,现在它没有显示任何内容。

jQuery代码:

function unique_requestid() {
    var timestamp = Number(new Date()).toString();
    var random = Math.random() * (Math.random() * 100000 * Math.random() );
    var unique = new String();
    unique = timestamp + random;
    return unique;
}

function FriendsContent(id) {
    if(id == 2){
        var refresh = setInterval(
            function() {
                $("#fArea").load("friends_online.php?fo="+id+"&random=" +
                    unique_requestid());
            }, 5000
        );
    } else {
        $("#fArea").load("friends_online.php?fo="+id+"&random=" +
            unique_requestid());
    };
}

首先,在您粘贴的代码中,缺少} 我不确定这是否是粘贴错误。 一旦超过了该限制,当前的代码正在执行的操作是等待5秒钟(如果ID为2)进行呼叫,然后每5秒钟发出一次请求,否则只需执行一次立即请求。 在不查看调用此函数的代码的情况下,很难分辨出问题出在哪里。

但是,您说的想做的听起来像只是在ID为2的情况下才发出请求,在这种情况下:

function FriendsContent(id) {
    if(id == 2) {
        var refresh = setInterval(function() {
            $("#fArea").load("friends_online.php?fo="+id+"&random=" + unique_requestid());
        }, 5000);
    }
}

但是,到最后,如果您想要在这样的站点上获得适当的帮助,则必须小心谨慎地表述您要做什么以及到目前为止已采取的步骤。

如果未显示任何内容,请确保您可以直接访问friends_online.php页面。 另外,如果选择了id == 2然后选择了另一个id,请尝试向else条件中添加一个clearInterval()以防止刷新。

function FriendsContent(id) {
    var refresh;
    if(id == 2){
        refresh = setInterval(
         function() {
            $("#fArea").load("friends_online.php?fo="+id+"&random=" +
                unique_requestid());
          }, 5000
        );
    } else {
        clearInterval(refresh);
        $("#fArea").load("friends_online.php?fo="+id+"&random=" +
            unique_requestid());
    };
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM