Javascript 从字符串中添加提取值
正如您所看到的,我从标题中提取了值。但是我对加法有问题。基本上我不知道如何在.ct图表中添加every.work day图形元素。所以它将类似于1,25+8,25+0,75+0,5=XY和2,25+7,25+2,75+0,5=XY。有什么想法吗?非常感谢 演示: JS:Javascript 从字符串中添加提取值,javascript,jquery,addition,Javascript,Jquery,Addition,正如您所看到的,我从标题中提取了值。但是我对加法有问题。基本上我不知道如何在.ct图表中添加every.work day图形元素。所以它将类似于1,25+8,25+0,75+0,5=XY和2,25+7,25+2,75+0,5=XY。有什么想法吗?非常感谢 演示: JS: $('.ct图表')。每个(函数(){ var graphTitle; $(this).find('.work day graph').each(function()){ graphTitle=$(this.attr('titl
$('.ct图表')。每个(函数(){
var graphTitle;
$(this).find('.work day graph').each(function()){
graphTitle=$(this.attr('title');
var graphTime=graphTitle.substring(graphTitle.lastIndexOf('(')+1,graphTitle.lastIndexOf('h'));
//graphTimeVal=graphTime.parseInt();
$(''+graphTime+''+'').appendTo('.output');
});
});
首先,请小心,因为您在字符串中使用了“,”而不是“.”。若要添加这些数字,必须对其进行浮点运算
演示:
var-val=0;
$('.ct chart')。每个(函数(){
var graphTitle;
$(this).find('.work day graph').each(function()){
graphTitle=$(this.attr('title');
var graphTime=graphTitle.substring(graphTitle.lastIndexOf('(')+1,graphTitle.lastIndexOf('h'));
graphTime=graphTime.replace('、'、');
val+=parseFloat(graphTime);
$(''+graphTime+''+'').appendTo('.output');
});
});
console.log(val);//23.5
执行相同的操作,但通过ct-chart2或其他方式更改第二个ct chart类,以便可以独立添加元素。这里是一个修改后的JSFIDLE: 如果要显示两个图表的总和,则需要在两个图表中都有一个单独的输出,以使其正常工作
$('.ct-chart').each(function() {
var graphTitle;
// Save the sum of the hours
var graphTimeSum = 0;
$(this).find('.work-day-graph').each(function() {
graphTitle = $(this).attr('title');
var graphTime = graphTitle
.substring(graphTitle
.lastIndexOf('(') + 1, graphTitle
.lastIndexOf('h')
).replace(',', '.');
// Add the current hours to the sum
graphTimeSum += parseFloat(graphTime);
});
// Here we select the output class inside the chart
$('<span class=output-val>' + graphTimeSum + '</br>' + '</span>').appendTo($(this).find('.output'));
});
$('.ct图表')。每个(函数(){
var graphTitle;
//保存小时数的总和
var graphTimeSum=0;
$(this).find('.work day graph').each(function()){
graphTitle=$(this.attr('title');
var graphTime=graphTitle
.子字符串(graphTitle)
.lastIndexOf(“(”)+1,graphTitle
.lastIndexOf('h'))
).替换('、'、');
//将当前小时数添加到总和中
graphTimeSum+=parseFloat(graphTime);
});
//这里我们选择图表中的输出类
$(''+graphTimeSum+''+'').appendTo($(this.find('.output'));
});
var val = 0;
$('.ct-chart').each(function() {
var graphTitle;
$(this).find('.work-day-graph').each(function() {
graphTitle = $(this).attr('title');
var graphTime = graphTitle.substring(graphTitle.lastIndexOf('(') + 1, graphTitle.lastIndexOf('h'));
graphTime = graphTime.replace(',', '.');
val += parseFloat(graphTime);
$('<span class=output-val>' + graphTime + '</br>' + '</span>').appendTo('.output');
});
});
console.log(val); // 23.5
$('.ct-chart').each(function() {
var graphTitle;
// Save the sum of the hours
var graphTimeSum = 0;
$(this).find('.work-day-graph').each(function() {
graphTitle = $(this).attr('title');
var graphTime = graphTitle
.substring(graphTitle
.lastIndexOf('(') + 1, graphTitle
.lastIndexOf('h')
).replace(',', '.');
// Add the current hours to the sum
graphTimeSum += parseFloat(graphTime);
});
// Here we select the output class inside the chart
$('<span class=output-val>' + graphTimeSum + '</br>' + '</span>').appendTo($(this).find('.output'));
});