c# input 日期 日期天数 小时

本文介绍了一种使用JavaScript计算两个日期之间的天数和小时数的方法,并提供了具体的代码实现。通过解析日期格式并利用毫秒级的时间戳进行计算,可以方便地获取两个时间点之间的间隔。

       

                    <li class="popmenurightli">
                        <input class="Wdate" type="text" width='350px' id="ipt_begindatetime" onfocus="var enddatetime=$dp.$('ipt_enddatetime');WdatePicker({onpicked:function(){enddatetime.focus();},maxDate:'#F{$dp.$D(\'ipt_enddatetime\')}'})" onblur="GetDays()" />
                    </li>
                    <li class="popmenurightli">
                        <input id="ipt_enddatetime" class="Wdate" type="text" width='350px' onfocus="var totaldays=$dp.$('ipt_totaldays');WdatePicker({onpicked:function(){totaldays.focus();},minDate:'#F{$dp.$D(\'ipt_begindatetime\')}'})" />
                    </li>
                    <li class="popmenurightli">
                        <input type="text" id="ipt_totaldays" onfocus="GetDays()" onblur="GetDays()" onkeyup="this.value=this.value.replace(/\D/g,'')"  readonly="readonly"/>
                    </li>

 

 

//计算时间差
    function GetDays() {
        var kk = GetDateDiff($("#ipt_begindatetime").val(), $("#ipt_enddatetime").val());
        $("#ipt_totaldays").val(kk);
    }
    function GetDateDiff(startDate, endDate) {
        var startTime = new Date(Date.parse(startDate.replace(/-/g, "/"))).getTime();
        var endTime = new Date(Date.parse(endDate.replace(/-/g, "/"))).getTime();
        var dates = Math.abs((startTime - endTime)) / (1000 * 60 * 60 * 24);
        return dates + 1;
    }

///小时

                    <li class="popmenurightli">
                        <input type="text" id="ipt_begindatetime" class="Wdate" onfocus="var enddatetime=$dp.$('ipt_enddatetime');WdatePicker({onpicked:function(){enddatetime.focus();},maxDate:'#F{$dp.$D(\'ipt_enddatetime\')}',dateFmt:'yyyy-MM-dd HH:mm:ss'})" width='350px' onblur="GetDays()" />
                    </li>
                    <li class="popmenurightli">
                        <input type="text" id="ipt_enddatetime" class="Wdate" onfocus="var egressiontotaltime=$dp.$('ipt_egressiontotaltime');WdatePicker({onpicked:function(){egressiontotaltime.focus();},minDate:'#F{$dp.$D(\'ipt_begindatetime\')}',dateFmt:'yyyy-MM-dd HH:mm:ss'})" width='350px' />
                    </li>
                    <li class="popmenurightli">
                        <input type="text" id="ipt_egressiontotaltime" onfocus="GetDays()" onblur="GetDays()" onkeyup="this.value=this.value.replace(/\D/g,'')"  readonly="readonly"/>
                    </li>

    //计算时间差
    function GetDays() {
        var kk = GetDateDiff($("#ipt_begindatetime").val(), $("#ipt_enddatetime").val());
        $("#ipt_egressiontotaltime").val(kk);
    }
    function GetDateDiff(startDate, endDate) {
        var startTime = new Date(Date.parse(startDate.replace(/-/g, "/"))).getTime();
        var endTime = new Date(Date.parse(endDate.replace(/-/g, "/"))).getTime();
        var hour = parseInt(Math.abs((startTime - endTime)) / (1000 * 60 * 60));   //把相差的毫秒数转换为小时
        return hour;
    }

转载于:https://www.cnblogs.com/IT1517/p/5053579.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值