循环使用javascript/JQuery数组并获得';格兰德';全部的
好的,我已经为此工作了一段时间,我有一些接近使它工作,但不完全。因此,我要做的是将每周输入表单中的值添加到一个带有键的数组中 AJAX将尽可能不限制行数(这很好),通过一个按钮向表单中添加一行 我现在把每天的总数加在一起,这是有效的,因为所有的周一都有一个.Monday的课程(我可以发布它需要的代码,请问一下)并且每隔一天 我在每个输入上都有一个id,作为一周中的一天和一个计数,所以#Monday0,#Monday1,对于每一天和每一行等都是相同的 现在,我使用下面的代码所做的是添加周,然后在周行中显示该周(现在是控制台日志)。所以我想添加所有以0结尾的每日ID,从周一到周日,然后对1执行相同的操作,以此类推循环使用javascript/JQuery数组并获得';格兰德';全部的,javascript,jquery,arrays,Javascript,Jquery,Arrays,好的,我已经为此工作了一段时间,我有一些接近使它工作,但不完全。因此,我要做的是将每周输入表单中的值添加到一个带有键的数组中 AJAX将尽可能不限制行数(这很好),通过一个按钮向表单中添加一行 我现在把每天的总数加在一起,这是有效的,因为所有的周一都有一个.Monday的课程(我可以发布它需要的代码,请问一下)并且每隔一天 我在每个输入上都有一个id,作为一周中的一天和一个计数,所以#Monday0,#Monday1,对于每一天和每一行等都是相同的 现在,我使用下面的代码所做的是添加周,然后在周
var LoadHourTotals = function() {
$('.TimebreakdownInput').change(function() {
var InputArrays = []; //Array to store all weekly inputs
var Totals = []; //Store Array total for display
GetCurrentID = $(this).attr('id');
CurrentCount = GetCurrentID.charAt(GetCurrentID.length-1)
var WeeklyArray = ["Monday"+CurrentCount,"Tuesday"+CurrentCount,"Wednesday"+CurrentCount,"Thursday"+CurrentCount,"Friday"+CurrentCount,"Saturday"+CurrentCount,"Sunday"+CurrentCount];
$.each(WeeklyArray, function(k, v) {
var values = parseFloat( $('#'+v).val() );
if (isNaN(values)) { values = 0; } //Set value to 0 if its not a number
if (!values) { values = 0; }
InputArrays.push({ key: CurrentCount, hours:values });
});
console.log(InputArrays);
//$('.TimebreakdownTotalHours').html(Totals); //Display / Add total into HTML
});
} //End of LoadHourTotals function
我想我已经接近这一点了,每天的每个输入都保存到自己的数组中,其中包含一个键计数和当天的值。例如,0:XX 0:XX(这七次,全部为第一行)。然后根据需要对每行重复此操作
如果我做的不对,或者有更好的方法,请告诉我
但现在我需要做的是遍历每个键,取它的值,得到所有七个输入的“总计”,然后显示或保存该总计到一个新数组中(这就是我试图做的),然后显示/控制台记录每个星期的总计
我已经在这里浏览了很多帖子,但是我找不到任何适合我的问题的东西
欢迎大家帮忙
如果我没有发布一些需要的代码,请让我知道。
如果我解释得不对,请告诉我
非常感谢。没关系,我找到了答案。我试过了但没用
var total = 0;
$.each(InputArrays,function() {
total += this;
console.log(total);
});
但有些人在玩弄代码,我在控制台上记录了“this”,并尝试了下面的方法,现在看来效果不错。谢谢
var total = 0;
$.each(InputArrays,function() {
total += this.hours;
console.log(total);
});
很抱歉,我没有为此设置JS FIDLE,大多数表单代码不是HTML,而是由CakePHP的表单帮助程序生成的。您可以在浏览器中从查看源代码复制HTML。但在您的浏览器中它是纯HTML:)我可以,是的,但有AJAX函数无法工作,我只是在发布后才考虑设置一个-抱歉…当然你可以循环使用
$。每个InputArray
添加总计,然后将其存储在另一个全局范围内的变量中,你可以从其他迭代/代码访问该变量,然后相应地进行处理?顺便说一下,如果您使用的是现代浏览器,您可以选择,