【问题标题】:Compare hours in javascript在javascript中比较小时
【发布时间】:2018-03-11 22:34:41
【问题描述】:

首先我的英语不是很好。

我想用 HTML 编写一个脚本,我可以在 21:00(晚上 9 点)到早上 6:00 之间进行登录访问。

function myFunc() {

        var today = new Date();
        var h = today.getHours();

        var stunde = [21, 22, 23, 1, 2, 3, 4, 5, 6];

        var s1 = document.getElementById("field1").value;
        var s2 = document.getElementById("field2").value;

        if (h == stunde) {
            if (s1 == s2) {
                if (s1 != '' && s2 != '') {
                    window.location.href = 'default.html';
                }
            } else window.alert("Veuillez insérer les données correctement.");
        }
    }

我的如果-陈述不正确吗?也许我应该使用 for(; ;)

感谢您考虑我的请求 :)

\o/

【问题讨论】:

    标签: javascript html login


    【解决方案1】:

    if (h == stunde) 应该变成if (stunde.includes(h))

    【讨论】:

    • 感谢您的回复。我使用你的建议。
    【解决方案2】:

    首先,您的else 语句缺少{

    添加后,您需要确保在输入字段后实际可以触发您的逻辑。为此,我将功能移到了一个在单击按钮时调用的函数中。

    您可能还需要一个 else 条件来表示时间无效;目前在这种情况下没有任何反应。

    最后,将时间与数组进行比较的第一个条件需要检查该值是否在数组,而不是完全等于数组本身。这可以通过
    if (stunde.indexOf(h) > -1)(或更直观的 ES6 方法 .includes())来完成。

    这都可以在下面看到:

    var today = new Date();
    var h = today.getHours();
    
    var stunde = [21, 22, 23, 1, 2, 3, 4, 5, 6];
    
    var s1 = document.getElementById("field1").value;
    var s2 = document.getElementById("field2").value;
    
    document.getElementsByTagName("button")[0].addEventListener("click", function() {
      if (stunde.indexOf(h) > -1) {
        if (s1 == s2) {
          if (s1 != '' && s2 != '') {
            window.location.href = 'default.html';
          }
        } else {
          window.alert("Veuillez insérer les données correctement.");
        }
      } else {
         window.alert("Time not valid.");
      }
    });
    <input id="field1">
    <input id="field2">
    <button>Go</button>

    【讨论】:

    • 感谢您回复我的帖子。
    • 代替 if (stunde.indexOf(h) > -1),我使用 if (stunde.includes(h)) 并且效果很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    • 2012-03-04
    • 1970-01-01
    • 2017-02-08
    • 1970-01-01
    • 2018-03-10
    相关资源
    最近更新 更多