• 用JS计算时间差


    代码如下:

            function tbEndTime_OnBlur() {
                var stime = document.getElementById('<%= tbStartTime.ClientID %>').value.split("-");
                var etime = document.getElementById('<%= tbEndTime.ClientID %>').value.split("-");
                var st = new Date(stime[0], stime[1] - 1, stime[2]);
                var et = new Date(etime[0], etime[1] - 1, etime[2]);
                if (stime.length == 3 && etime.length == 3) {
                    var days = ((et - st) / (1000 * 60 * 60 * 24)) + 1;
                    if (days > 0) {
                        document.getElementById('<%= lbTotal.ClientID %>').innerText = days;
                    } else {
                        document.getElementById('<%= lbTotal.ClientID %>').innerText = "";
                    }
                } else {
                    document.getElementById('<%= lbTotal.ClientID %>').innerText = "";
                }
            }

    由于是在两个文本框中记录时间的,又不想在后台判断,所以我用的是onblur事件,总觉得不是太合适,但又没找到更好办法。

    在从stime转成st的时候,发现月份居然会加上一个月,比如我选择的是4月40号,转成st的时候就是变成5月30号,导致在计算跨月的时候的天数出错,所以只能在转换月份的时候减1,很奇怪的问题,希望知道的朋友告知一下。

  • 相关阅读:
    输入输出重定向
    MarkdownPad 2中编辑
    (转)Maven最佳实践:划分模块
    (转)maven设置内存
    我收集的sonar参考资料
    (转)linux service理解
    制作service服务,shell脚本小例子(来自网络)
    6
    4
    5
  • 原文地址:https://www.cnblogs.com/liuxiuming/p/3082812.html
Copyright © 2020-2023  润新知