首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数小时数,每7.5小时设定一个新的一天

数小时数,每7.5小时设定一个新的一天
EN

Stack Overflow用户
提问于 2015-05-14 14:54:53
回答 1查看 44关注 0票数 0

我有一个训练单元的清单,每个单元都有训练所需的小时数。例如:

培训单元- 2.5小时

培训模块2-1.0小时

.

我把它们设置为jquery拖放,就像购物车一样,这样用户就可以抓取想要的模块,并将它们放到另一个容器中。

当一个项目被添加到容器中时,我需要计算出该模块将放在哪一天的培训。每天7.5小时。

我需要在投递容器中显示以下内容:

培训单元1-2.5小时-第1天

培训模块2-1.0小时-第1天

培训单元3-4.0小时-第1天

培训模块4-1.0小时-第2天

培训模块5-4.5小时-第2天

培训模块6-3.0小时-第3天

.

这就是我尝试过的:

代码语言:javascript
运行
复制
var $dayFields = $('#sortable2 li').find('#day');
var $sumHrsFields = $('#sortable2 li').find('#sumHrs');

var hrsArray = $("#sortable2 li").find("#hrsSpan").map(function () { return $(this).text() }).get();            
//Add all the hrs together to get the total
for (var i in hrsArray) {
    total += hrsArray[i];
    if (total / 7.5 <= 1) {
        $($dayFields.get(i)).html('1');
        $($sumHrsFields.get(i)).html(total);
    }
    else if (total / 7.5 > 1) {
        dayText = total / 7.5;
        //if the dayText value ends up as a whole number, don't do anything. If it isn't, round down to whole number and add 1
        if (dayText % 1 == 0) {

        } 
        else {
            dayText = dayText | 0;
            dayText += 1; 
        }
        $($dayFields.get(i)).html(dayText);
        $($sumHrsFields.get(i)).html(total-(7.5));
    }
}

它在最初的2或3天工作,但之后的日子值不加起来。

这有什么更优雅的吗?我觉得我想得太多了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-14 15:07:06

这里有一些取样方法:

代码语言:javascript
运行
复制
var hrsArray = [1.75, 1, 3.25, 2.5];
var total = 0;
var hoursInDay = 7.5;
for (var i in hrsArray) {
  var moduleNo = parseInt(i) + 1;
  total += hrsArray[i];
  var days = Math.floor(total / hoursInDay);
  var dayText = days + 1; // need to add 1 for 1-day ahead

  $('#display').append('Module ' + moduleNo + ': ' + hrsArray[i] + ' hours, Day ' + dayText);
  $('#display').append('<br/>');
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="display"/>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30240504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档