<form onsubmit="callSubmitHandler(); return false;">
$(".input-buttons").each(function () {
// bplus = +
// bminus = -
var input = ($(this).is("[data-target]") ? $($(this).attr("data-target")) : ($(this).is(".bminus") ? $(this).next() : $(this).prev()));
$(this).click(function () {
var max = $(input).is("[data-max]") ? parseInt($(input).attr("data-max")) : 0;
var step = $(input).is("[data-step]") ? parseInt($(input).attr("data-step")) : 1;
var val = parseInt($(input).val()) + (step * ($(this).is(".bminus") ? -1 : 1));
if (max != 0 && max < val) {
val = max;
}
$(input).val(val).change();
});
$(input).change(function () {
var max = $(this).is("[data-max]") ? parseInt($(this).attr("data-max")) : 0;
var step = $(this).is("[data-step]") ? parseInt($(this).attr("data-step")) : 1;
var val = parseInt($(input).val());
var valChanged = false;
if (step > 1) {
if (val % step > 0) {
val = Math.ceil(val / step) * step;
valChanged = true;
}
}
if (val > max) {
val = max;
valChanged = true;
}
if (valChanged) {
$(input).val(val).change();
return false;
}
});
});
// Начало и конец
var dates = [new Date(2016, 10, 29), new Date(2016, 11, 1)];
var pricesPerMonth = {
"10": 2000,
"11": 1500
};
// Расчет цены
var price = 0;
for (var i = dates[0].getTime(); i <= dates[1].getTime(); i += 86400 * 1000) {
var d = new Date(i);
var m = d.getMonth();
if (pricesPerMonth[m]) {
price += pricesPerMonth[m];
}
}
console.log(pricesPerMonth);
console.log(price);