[英]Jquery Math with Multiple HTML tables
所以我有12張桌子,一年中的每個月一張。 每個表格行都有一個顯示值的單元格。 我想為每個表計算這些行/單元格的總和。 現在,我正在使用一個腳本,該腳本從預覽答案中看起來像這樣,但是將其復制12次無法正常工作,並且其中包含很多代碼。 有沒有更短的方法可以做到這一點?
<script type='text/javascript'> //<![CDATA[ $(window).load(function(){ var valueCells = document.querySelectorAll('.rowDataSdAugust'); var sum = 0; Array.prototype.forEach.call( valueCells, function(valueCell) { sum += parseFloat(valueCell.innerText); } ); var roughsum = sum /valueCells.length; var finalsum = roughsum.toFixed(2); document.querySelectorAll('.totalColAugust')[0].innerHTML = "<h1 style='color:green;'>"+ finalsum + "% GAIN</h1>"; }); //]]> </script> <script type='text/javascript'> //<![CDATA[ $(window).load(function(){ var valueCells = document.querySelectorAll('.rowDataSdJuly'); var sum = 0; Array.prototype.forEach.call( valueCells, function(valueCell) { sum += parseFloat(valueCell.innerText); } ); var roughsum = sum /valueCells.length; var finalsum = roughsum.toFixed(2); document.querySelectorAll('.totalColJuly')[0].innerHTML = "<h1 style='color:green;'>"+ finalsum + "% GAIN</h1>"; }); //]]> </script>
創建兩個數組-一個用於表名,另一個用於總列名。 然后通過循環執行相同的功能次數。
<script type='text/javascript'>
//<![CDATA[
$(window).load(function(){
var tableArray = new Array("rowDataSdJanuary","rowDataSdFebruary","rowDataSdMarch","rowDataSdApril","rowDataSdMay","rowDataSdJune","rowDataSdJuly","rowDataSdAugust","rowDataSdSeptember","rowDataSdOctober","rowDataSdNovember","rowDataSdDecember");
var totalColArray = new Array("totalColJanuary","totalColFebruary","totalColMarch","totalColApril","totalColMay","totalColJune","totalColJuly","totalColAugust","totalColSeptember","totalColOctober","totalColNovember","totalColDecember");
for(i=0; i<tableArray.length; i++) {
var valueCells = document.querySelectorAll('.'+tableArray[i]);
var sum = 0;
Array.prototype.forEach.call(
valueCells,
function(valueCell) {
sum += parseFloat(valueCell.innerText);
}
);
var roughsum = sum /valueCells.length;
var finalsum = roughsum.toFixed(2);
document.querySelectorAll('.'+totalColArray[i])[0].innerHTML = "<h1 style='color:green;'>"+ finalsum + "% GAIN</h1>";
}
});
//]]>
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.