Code:
function sumVal(){
var tot = 0;
var check_tot = 0;
var n = 0;
var m = 0;
var txtvalname = '';
var txttotal = '';
var txtelements = document.getElementsByClassName("txt");
var sumElements = document.getElementsByClassName("total");
var txtcount = txtelements.length;
var totalcount = sumElements.length;
var sum = txtcount/totalcount;
var subj_value = document.getElementById("subj_value").value;
var subj_id = document.getElementById("subj_id").value;
var addper = 0;
if(subj_value == 3)
{
var base_mark = new Array(50,50,20);
var percent = new Array(30,30,40);
}
if(subj_value == 6)
{
var base_mark = new Array(20,20,100,20,100,50);
var percent = new Array(10,10,15,10,15,40);
}
if(subj_value == 8)
{
var base_mark = new Array(20,20,20,20,20,20,20,20);
var percent = new Array(12.5,12.5,12.5,12.5,12.5,12.5,12.5,12.5);
}
if(subj_value == 7)
{
var base_mark = new Array(20,20,20,20,20,20,20);
var percent = new Array(12.5,12.5,12.5,12.5,17,17,16);
}
if(subj_value == 2 && subj_id == 53)
{
var base_mark = new Array(60,80);
var percent = new Array(40,60);
}
if(subj_value == 2 && subj_id == 5)
{
var base_mark = new Array(40,40);
var percent = new Array(50,50);
}
if(subj_value == 2 && subj_id == 14 || subj_id == 15 || subj_id == 16 || subj_id == 17 || subj_id == 18 || subj_id == 19)
{
var base_mark = new Array(100,100);
var percent = new Array(50,50);
}
for(var i = 0; i < txtelements.length; ++i){
txtvalname += txtelements[i].name;
txtvalname = txtvalname + "___";
}
for(var j=0; j< sumElements.length; j++){
txttotal += sumElements[j].name;
txttotal = txttotal + "___";
// alert( txttotal);
}
//split
txtvalname = txtvalname . split('___');
txttotal = txttotal . split('___');
for (var i = 0; i<totalcount; i++)
{
for (var j = 0;j<sum; j++)
{
if( document.getElementById(txtvalname[n]).value == 'v' || document.getElementById(txtvalname[n]).value == 'V' || document.getElementById(txtvalname[n]).value == '' )
{
check_tot = parseFloat(parseInt(document.getElementById(txtvalname[n]).value,0)/base_mark[j])*percent[j];
if(check_tot == 'NaN' || check_tot == 'NAN'){
tot = tot+0;
}
n++;
}
else
{
// alert(base_mark[j]);
tot += parseFloat(parseInt(document.getElementById(txtvalname[n]).value)/base_mark[j])*percent[j];
addper = addper + percent[j];
n++;
if(tot == 'NaN' || tot == 'NAN'){
tot = tot+0;
}
}
}
// alert(addper);
tot = (tot/addper)*100;
//display the total
document.getElementById(txttotal[m]).value = tot.toFixed(0);
m++;
tot = 0;
addper = 0;
}
}
PHP CODE:
Bookmarks