Zdravím Potreboval by som pomôcť s javascriptom. Ktorý slúži na výpočet nutričných hodnôt potravín.
Základný súčet ceny mi funguje v poriadku. Ale chcem aby to spočítavalo aj bielkoviny, sacharidy a tuky.
A tiež potrebujem aby započítavalo aj viac kusov so selectu. Skúšal som už aj hľadať na fórach ale neviem si rady so zápisom javy. Tu je výsledný script
http://www.zaujimave.6f.sk/index.html
A tu je kód
Kód:
<!doctype html>
<meta charset="utf-8">
</select>
<form name="formulár">
<input type="checkbox" name="suroviny[]" data-cena="0.90" biekoviny="5" tuky="3" id="0" value="0"> <label for="0">Mlieko</label>
<select id="kusy">
<option value="1">1 kus</option>
<option value="2">2 kusy</option>
<option value="3">3 kusy</option>
</select>
<br>
<input type="checkbox" name="suroviny[]" data-cena="0.60" biekoviny="4" tuky="4" sacharidy="5" id="1" value="1"> <label for="1">Maslo</label>
<select id="kusy">
<option value="1">1 kus</option>
<option value="2">2 kusy</option>
<option value="3">3 kusy</option>
</select>
<br>
<input type="checkbox" name="suroviny[]" data-cena="1.20" biekoviny="6" tuky="5" sacharidy="5" id="2" value="2"> <label for="2">Tvaroh</label>
<select id="kusy">
<option value="1">1 kus</option>
<option value="2">2 kusy</option>
<option value="2">2 kusy</option>
</select>
<br>
<input type="checkbox" name="suroviny[]" data-cena="1.50" biekoviny="6" tuky="5" sacharidy="5" id="3" value="3"> <label for="3">Jogurt</label>
<select id="kusy">
<option value="1">1 kus</option>
<option value="2">2 kusy</option>
<option value="3">3 kusy</option>
</select>
<br>
</select>
<hr> <span id="vysledok">0</span> €
<br><span id="biekoviny">0</span> Biekoviny
<br><span id="tuky">0</span> Tuky
<br><span id="sacharidy">0</span> Sacharidy
</form><script>
var ch=[], cena=[], el=document.forms[0].elements, n=0, vystup=document.getElementById("vysledok");
for(var i=0; i<el.length; i++){
if(el[i].name=="suroviny[]"){
ch[n]=el[i].checked=false; cena[n++]=Number(el[i].getAttribute("data-cena")); el[i].onclick=f;
}
}
function f(){
var vysledok=0;
ch[this.id]=this.checked;
for(var i=0; i<n; i++)vysledok+=ch[i]*cena[i];
vystup.innerHTML=vysledok;
}
</script>