JS算出请假时间

问题描述

正常上班时间为周一至周五8:30-12:00,13:00-17:30,要求选择了请假起始时间与终止时间后,能用JS算出请假的总小时数,此总小时数要求扣除掉非上班时间(周末,常见节假日,还有一天中的非上班时间:如午休的那一个小时)。

解决方案

解决方案二:
这里有个供参考:http://topic.csdn.net/u/20110428/16/f5722344-be15-4405-9bf3-d21a963de804.html
解决方案三:
以及这个http://topic.csdn.net/u/20091015/18/600464fb-c8a0-46ed-8eaa-403a65ca46d3.html
解决方案四:
想的太多了。。。有的你考虑的了。。。当初我做请假系统的时候就这个考虑了好久。。
解决方案五:
给点建设性意见啊,或者贴下你原来的代码引用3楼zsx841021的回复:

想的太多了。。。有的你考虑的了。。。当初我做请假系统的时候就这个考虑了好久。。

解决方案六:
引用4楼cq3000457的回复:

给点建设性意见啊,或者贴下你原来的代码引用3楼zsx841021的回复:想的太多了。。。有的你考虑的了。。。当初我做请假系统的时候就这个考虑了好久。。

我的代码是用c#写的。。也要吗?
解决方案七:
不用了,谢谢。我要JS的引用5楼zsx841021的回复:

引用4楼cq3000457的回复:给点建设性意见啊,或者贴下你原来的代码引用3楼zsx841021的回复:想的太多了。。。有的你考虑的了。。。当初我做请假系统的时候就这个考虑了好久。。我的代码是用c#写的。。也要吗?

解决方案八:
还可以用sql来做的了总之逻辑都差不多的勒
解决方案九:
这个是我写的,你可以参考一下
解决方案十:
<!DOCTYPEhtml><html><head><scriptsrc="jquery.js"></script></head><body><form><divid="start"><span>起始时间:</span><label>年:<inputtype="text"name="year"value=""/></label><label>月:<inputtype="text"name="month"value=""/></label><label>日:<inputtype="text"name="date"value=""/></label><label>小时:<inputtype="text"name="hour"value=""/></label><label>分钟:<inputtype="text"name="minute"value=""/></label></div><divid="end"><span>起始时间:</span><label>年:<inputtype="text"name="year"value=""/></label><label>月:<inputtype="text"name="month"value=""/></label><label>日:<inputtype="text"name="date"value=""/></label><label>小时:<inputtype="text"name="hour"value=""/></label><label>分钟:<inputtype="text"name="minute"value=""/></label></div><inputid="count"type="button"value="Conut"/></form><script>functiongetTime($container,boolen){varyear=$container.find('[name=year]').val(),month=$container.find('[name=month]').val()-1,date=$container.find('[name=date]').val(),hour=$container.find('[name=hour]').val(),minute=$container.find('[name=minute]').val();returnboolen?newDate(year,month,date,hour,minute):newDate(year,month,date);}functiongetSurplusHours(time){varcurrentHour=time.getHours();if(currentHour<=8){return8;}elseif(currentHour>=17){return0;}elseif(currentHour>=12){return17-currentHour;}else{return17-currentHour-1;}}functiongetPassHours(time){varcurrentHour=time.getHours();if(currentHour<=8){return0;}elseif(currentHour>=17){return8;}elseif(currentHour>=12){returncurrentHour-8-1;}else{returncurrentHour-8;}}$('#count').click(function(){vartimeStart=getTime($('#start')),timeEnd=getTime($('#end')),startDay=timeStart.getDay(),endDay=timeEnd.getDay(),days=Math.floor((timeEnd.getTime()-timeStart.getTime())/(1000*60*60*24)),surplusHours=0;if(days===0){surplusHours=getSurplusHours(getTime($('#start'),true))+8-getSurplusHours(getTime($('#end'),true));}else{surplusHours+=getSurplusHours(getTime($('#start'),true));surplusHours-=getSurplusHours(getTime($('#end'),true));var_week=days/7;varweek=Math.floor(_week);surplusHours+=week*5*8;if(_week!==week){var_days=days-week*7;if(startDay+_days<6){surplusHours+=_days*8;}elseif(startDay+_days===6){surplusHours+=(_days-1)*8;}else{surplusHours+=(_days-2)*8;}}}alert(surplusHours);});</script></body></html>

时间: 2024-10-31 12:06:32

JS算出请假时间的相关文章

gridview-Asp.net GridVIew中如何通过生产日期和使用寿命两列自动算出报废时间

问题描述 Asp.net GridVIew中如何通过生产日期和使用寿命两列自动算出报废时间 库存管理系统 在物品信息表中如何通过生产日期和使用寿命算出报废时间 EG: 生产日期 2015/1/1 使用寿命 6个月 得到 报废时间2015/7/1 解决方案 循环,DateTime.AddMonth 解决方案二: 能不能贴出具体代码,大神,非常感谢!!!

jsp中有两个输入框,第一个输入数据后,自动算出第二个框的数

问题描述 jsp中有两个输入框,第一个输入数据后,自动算出第二个框的数 比如,我要第一个框时数量,根据第一个输入框输入的数据,自动算出第二个框的数据,并显示出来.这个问题哪位大神给解决一下,感激不尽! 解决方案 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://apps.bdimg.com/libs/angular.js/1.4

js 弹出框插件实例与代码使用方法

js 弹出框插件实例与代码使用方法 使用方法: 1. 调用jquery库以及zxxbox插件文件,如下代码: <script type="text/网页特效" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script><script type="text/javascript" src="/study/js/jq

网站流量和金钱的关系 可以算出你每个月赚到的钱

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 网站流量和金钱的关系 可以算出你每个月赚到的钱 对于站长来说,这是很有参考价值的一篇文章,从中,也许您可以想到很多东西! 以下数据纯属个人调查和观察得到,数据有 大小的差异很正常,我列出的数据为一般统计数据.看个人能力的草作和运做. 站点不包括非法站点,比如**站点.不包括卖产品的商业站点. 纯属于 各类的个人站点 网站每天访问量 运做每个月

华为面试题:谁能算出这个概率?

问题描述 华为面试题:谁能算出这个概率? 华为面试题:公司年会,抽奖规则自定(抽奖顺序),20人进行抽奖,4人是老板,16人是员工,现有特等奖一名,一等奖三名,二等奖五名,剩余全部三等奖,其中特等奖为Iphone 6S,抽奖规则如下:如果员工抽中iphone 6S便归其所有,如果是老板抽中(任意一老板),将再拿出一台提供抽奖(奖池就是两台,如果又有老板抽中,以此内推),请问何种抽奖顺序能让老板最大概率抽中Iphone 6S 解决方案 问题既然没有指定是哪个老板的抽中概率最大,那就可以考虑为是使这

C# webbroser 自动点击JS弹出框?

问题描述 想做个挂站的小东东大体完成了,现在有个小问题我在挂站一段时间以后,会有一个退出的链接,点击后显示你本次的在线时间等信息,当你点击确定以后才算是真的退出现在问题是,我通过代码点击了退出链接后,弹出的js对话框阻塞了程序,我如何可以通过代码去点击这个JS弹出框的确定按钮??? 解决方案 解决方案二:你自己把这个对话框点了,那你弹出他来又有什么意义呢?用户也看不到他的在线时间等信息啊!解决方案三:overrideShowMessagewww.codeproject.com/KB/miscct

js实现获取当前时间是本月第几周的方法_javascript技巧

本文实例讲述了js实现获取当前时间是本月第几周的方法.分享给大家供大家参考.具体如下: <script language="javascript"> var getMonthWeek = function (a, b, c) { /* a = d = 当前日期 b = 6 - w = 当前周的还有几天过完(不算今天) a + b 的和在除以7 就是当天是当前月份的第几周 */ var date = new Date(a, parseInt(b) - 1, c), w = d

js弹出确认对话框confirm(),alert(),prompt

window.alert() 使用警告.提示和确  代码如下 复制代码 <html> <head> <script type="text/javascript"> function message() { alert("该提示框是通过 onload 事件调用的.") } </script> </head> <body onload="message()"> </body

js获取当前时间:用js去获取当前时间

  很多时候可能会用到用js去获取当前时间,然后根据获得的 年.月.日 重新组合成自己想要的字符串,现在自己就是想获得当前时间的 2011-05-06的形式,js的getFullYear() 可以返回2011, getMonth()  只能返回从 0-11之间的整数, getDate() 返回的是从1-31之间的整数,那怎么才能用比较简单的方法获取到05和06这样的字符串呢,在substr和substring都是从头读到尾的,详细的查看了js 手册,发现了string.slice这个函数,他可以