пРИМЕР

by George Bash

HTML

<form action="#" id="calc">
<select name="price1" id="adults">
	<option value="0">Кол-во взрослых</option>
	<option value="250">2</option>
	<option value="500">3</option>
	<option value="750">4</option>
</select>

<select name="price2" id="kids">
	<option value="0">Кол-во детей</option>
	<option value="250">2</option>
	<option value="500">3</option>
	<option value="750">4</option>
</select>

<h2>Кол-во посещений:</h2>
<div class="check-radio">
  <input type="radio" name="price3" value="200">
  <label>1</label>
</div>

<div class="check-radio">
  <input type="radio" name="price3" value="400">
  <label>2</label>
</div>
<br>
Итого: на <font id="persons"></font> людей, <font id="visits"></font> посещений, будет стоить: <output name="o" for="a b c d e f g">0</output> рублей.
</form>

JavaScript

window.addEventListener('DOMContentLoaded', function() {
	var form = document.querySelector('#calc'),
	elem = form.querySelectorAll('[name^="price"]'),
	output = form.querySelector('output');
	function total()
	{
	  output.innerHTML = [].reduce.call( elem, function(sum, el) {
		  var n =   (+el.value||0) * (el.checked || el.tagName == "SELECT" || el.type == "text");
		  return sum + n
	   },0);
	}
	form.addEventListener('change', total);
	form.addEventListener('input', total);
});