Показать сообщение отдельно
  #10 (permalink)  
Старый 27.10.2017, 10:54
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

ok, уменьшим код на одну строку совместимость от ie9
<div id="price">
	<ul>
		<li><input type="checkbox" name="regcalc" value="4000" />Нет</li>
		<li><input type="checkbox" name="regcalc" value="0" />Да</li>
		<li><input type="checkbox" name="regcalc" value="10000" />Общая система</li>
		<li><input type="checkbox" name="regcalc" value="5000" />Усно 6%</li>
		<li><input type="checkbox" name="regcalc" value="8000" />Усно 15%</li>
		<li><input type="checkbox" name="regcalc" value="1000" />1-10</li>
		<li><input type="checkbox" name="regcalc" value="3000" />11-30</li>
		<li><input type="checkbox" name="regcalc" value="9000" />31-50</li>
		<li><input type="checkbox" name="regcalc" value="15000" />51-70</li>
		<li><input type="checkbox" name="regcalc" value="18000" />71-90</li>
		<li><input type="checkbox" name="regcalc" value="22000" />91-110</li>
		<li><input type="checkbox" name="regcalc" value="25000" />111-130</li>
		<li><input type="checkbox" name="regcalc" value="28000"/>1-5</li>
		<li><input type="checkbox" name="regcalc" value="28000"/>6-10</li>
		<li><input type="checkbox" name="regcalc" value="28000"/>11-15</li>
		<li><input type="checkbox" name="regcalc" value="28000"/>16-20</li>
		<li><input type="checkbox" name="regcalc" value="28000"/>21-25</li>
		<li><input type="checkbox" name="regcalc" value="0"/>нет</li>
		<li><input class="dvadtsatiprocentov"  type="checkbox" name="regcalc" value="0" />Да</li>
	</ul>
	<div class="result" id="sum">0</div>
	</div>
<script>
price.onclick = function(e) {
  if ( "INPUT" === e.target.tagName) {
    var res = [].reduce.call(this.querySelectorAll('input:checked'), function(a, b) {
      return a + parseInt(b.value)
    }, 0);
    this.querySelector('.dvadtsatiprocentov:checked') && (res *= 1.2);
    sum.innerHTML = res;
  }
};
</script>
Ответить с цитированием