Javascript: Price Calculator

hotboyrz

Registered
Здравейте,
трябва ми помощ за едно просто (надявам се) скриптче.

Става въпрос за следното:

Примерно имам 5 checkboxa и 2 select option drop-down менюта. Интересува ме някой може ли да ми предостави скрипт който при зададен value на всеки checkbox и option от листата да пресмята избраните елементи и да изнася крайния резултат в един textfield с определно име.

Ще бъда благодарен на всеки който отговори, тъй като ми трябва спешно.
 
Малко ми се спи и недовиждам вече, принципно така трябва да изглежда скрипта, ако съм те разбрал правилно :)
Ако нещо не е наред, казвай :)
Код:
<input type="checkbox" id="check1" value="20">
<input type="checkbox" id="check2" value="20">
<input type="checkbox" id="check3" value="20">
<input type="checkbox" id="check4" value="20">
<input type="checkbox" id="check5" value="20">
<select id="sel1">
<option value="0></option>
<option value="10">10</option>
<option value="5"></option>
</select>

<select id="sel2">
<option value="0></option>
<option value="20">20</option>
<option value="15">15</option>
</select>

<a href="javascript:priceFunc();">Total ?</a>
<div id="total"></div>
<script>
function priceFunc(){
var s1 = i('sel1'),
s2 = i('sel2'),
total = 0;

// Взимаме чекбоксовете и ако са маркирани, добавяме стойността
for( var t=1;t<=5;t++){
    var c = document.getElementById('check'+t);
    if( c.checked == true ) total += c.value;
}

// Прибавяме и стойностите на двата селект бокса 
total += s1.options[s1.selectedIndex].value;
total += s2.options[s2.selectedIndex].value;

document.getElementById('total').innerHTML = 'Обща цена: '+total + ' млн лева :D';
}
</script>
 
Благодаря ти!

Само, че нещо не сработва. Също възможно ли е автоматично да се показва резултата в 1 text field при избиране на checkbox и/или option.
 
Извинявай, спеше ми се доста :D
Готово е, този път го пробвах и работи :D
Код:
<html>
<body>
<input type="checkbox" id="check1" value="20" onClick="priceFunc();">
<input type="checkbox" id="check2" value="20" onClick="priceFunc();">
<input type="checkbox" id="check3" value="20" onClick="priceFunc();">
<input type="checkbox" id="check4" value="20" onClick="priceFunc();">
<input type="checkbox" id="check5" value="20" onClick="priceFunc();">
<select id="sel1" onChange="priceFunc();">
<option value="0"></option>
<option value="10">10</option>
<option value="5"></option>
</select>

<select id="sel2" onChange="priceFunc();">
<option value="0"></option>
<option value="20">20</option>
<option value="15">15</option>
</select>

<a href="javascript:priceFunc();">Total ?</a>
<div id="total"></div>
<script>
function priceFunc(){
var s1 = document.getElementById('sel1'),
s2 = document.getElementById('sel2'),
total = 0;

// Взимаме чекбоксовете и ако са маркирани, добавяме стойността
for( var t=1;t<=5;t++){
    var c = document.getElementById('check'+t);
    if( c.checked == true ) total += parseInt(c.value);
}

// Прибавяме и стойностите на двата селект бокса
total += parseInt(s1.options[s1.selectedIndex].value);
total += parseInt(s2.options[s2.selectedIndex].value);

document.getElementById('total').innerHTML = 'Обща цена: '+total + ' млн лева :D';
}
</script>
</body>
</html>
 

Back
Горе