【问题标题】:PHP + JavaScript countdown echo 5 seconds / 1 secondPHP + JavaScript 倒计时回显 5 秒/1 秒
【发布时间】:2026-02-09 23:25:01
【问题描述】:

我刚刚弄清楚如何使用 javascript 为我的重定向页面回显动态倒计时。我很好奇当倒计时只剩下1秒时如何回显“秒”,但我该怎么做呢?

这是我的代码:

<script>
var counter = 5;

setInterval (function()
{   
    counter--;

    if(counter < 1)
    {
        window.location = 'login.php';
    }

    else
    {
        document.getElementById("count").innerHTML = counter;
       }
}, 1000);
</script>

--

echo "<table><tr><td> You will be redirected in <div id=\"count\">5</div> seconds.</td></tr></table>";

它回显“在 5/4/3/2/1 秒内重定向”。虽然是 OC,但当倒计时达到 1 时,我会被那个 S 困扰。任何帮助将不胜感激。

【问题讨论】:

  • 您需要显示更多代码,secondS 部分输出在哪里/如何?我们在这里唯一能看到的是你如何输出&lt;div id="count"&gt;元素中的数字

标签: php javascript forms echo countdown


【解决方案1】:

将“s”设置为变量。如果 counter == 1,将该变量设置为空字符串,然后相应地更新您的 div:

function() {
    var plural = "s";
    if (counter == 1) {
        plural = "";
    }
    // update div
}

【讨论】:

    【解决方案2】:

    由于您尚未发布“秒”所在的位置,因此我假设它在 DIV 之后。我建议在您的 javascript 中使用一些 if 语句来倒计时并相应地设置 innerHTML:

    <script>
    var counter = 5;
    var seconds = "";
    
    setInterval (function()
    {   
        counter--;
    
        if(counter < 1)
        {
            window.location = 'login.php';
        }
    
        else
        {
            if(count <= 1) seconds = " second";
            else seconds = " seconds";
            document.getElementById("count").innerHTML = counter + seconds;
        }
    }, 1000);
    </script>
    
    <div id=\"count\">5</div>
    

    【讨论】: