2016-05-30 5 views
0

У меня есть 7 дней план продукта с разной ценой продукта,Найти общую сумму как за выбранный план

Если пользователь выбрал план пн, вт, ср соответствующая ей цена 100200300
теперь я должен предоставить это продукт пользователя для 7 times.means,

пользователь получит продукт на пн, вт, ср, то на следующей неделе снова пн, вт, ср, и после этой недели только на пн

поэтому мне нужно, чтобы рассчитать его сумму цена аналогично

var total = 100 * 3 , 200 * 2 , 300 * 2 ; 

Как достичь этого? я пытался до сих пор,

var mon=document.getElementById("mon").value; 
var tue=document.getElementById("tue").value; 
var wed=document.getElementById("wed").value; 
var thu=document.getElementById("thu").value; 
var fri=document.getElementById("fri").value; 
var sat=document.getElementById("sat").value; 
var sun=document.getElementById("sun").value; 
var total=0; 
for(i=1;i<=7;i++){ 

if(mon != ''){ 
total=total+ +mon; 
} 
if(tue != ''){ 
total=total+ +tue; 
} 
if(wed != ''){ 
total=total+ +wed; 
} 
if(thu != ''){ 
total=total+ +thu; 
} 
if(fri != ''){ 
total=total+ +fri; 
} 
if(sat != ''){ 
total=total+ +sat; 
} 
if(sun != ''){ 
total=total+ +sun; 
} 
alert(total); 
} 

, но это не правильно .Это считается понедельник 7 раз

+0

Nirali, почему два '+' в 'общей сложности = общая + + пн ; ' – C2486

+0

* var total = 100 * 3, 200 * 2 ... * как вы получаете 3 и 2? – splash58

+0

@epodax удален php tag –

ответ

1
// Put values into array 
a = []; 
var a[0]=document.getElementById("mon").value; 
var a[1]=document.getElementById("tue").value; 
var a[3]=document.getElementById("wed").value; 
... 
// Dont forget to test that sum(a) != 0 to avoid endless loop 

var total=0; 
i = 7; 
p = 0; 
// Loop while all 7 days will be found 
while(i>0) { 
    // Find next not empty 
    while(a[p] == '') p = ++p % 7; 
    total += parseInt(a[p]); 
    i--; 
    p = ++p % 7 
} 
console.log(total); 

demo

+0

если я хочу такую ​​же функцию в течение 30 дней, то что я должен изменить? –

+0

Вы хотите посчитать 30 дней или изменить дни недели и дни месяца? – splash58

+0

изменить дни до дней месяца, означает, что если выбранные дни являются mon, tue, wed, тогда он должен рассчитывать до 30 дней –

Смежные вопросы