заставить скрипт работать с загрузкой страницы
Добавить значение: <input type="checkbox" id="oneType" value="500" onchange="costCalculator()" /> <div>Сумма: <span id="oneRezult">0</span> руб.</div> Добавить значение1: <input type="checkbox" id="twoType" value="1000" onchange="costCalculator()" /> <div>Сумма: <span id="twoRezult">0</span> руб.</div> <div>Общая сумма:</div> <div><span id="result">0</span> руб.</div> function costCalculator() { //Типы флажков var oneType = document.getElementById("oneType"); var twoType = document.getElementById("twoType"); //Результаты флажков var result = document.getElementById("oneType"); var result = document.getElementById("twoType"); //Общий результат var result = document.getElementById("result"); //Цена для флажков по умолчанию var onePrice = 0; var twoPrice = 0; //Общая цена var price = 0; //Умножаем значение на *ЧИСЛО onePrice += (oneType.checked == true) ? parseInt(oneType.value) : 0; twoPrice += (twoType.checked == true) ? parseInt(twoType.value) : 0; //Складываем типы флажков + имя списка price=onePrice + twoPrice; //Результат для полей oneRezult.innerHTML = onePrice; twoRezult.innerHTML = twoPrice; //Общий результат result.innerHTML = price; } Проблема такова: скрипт складывает значение value чекбоксов. и начинает работать с первым кликом по чекбоксу. Но если чекбокс по умолчанию checked он считает его не чекнутым до первого клика по любому чеку. Как сделать чтобы с загрузкой станицы все чекбоксы со значением по умолчанию checked он считал при загрузке? ХЕЛП ПЛИЗ! |
j0hnik,
1) Скрипт в конец боди положи или используй такую фигню var callback = function() { // Handler when the DOM is fully loaded // Короче сюда суй свой код }; if (document.readyState === 'complete' || (document.readyState !== 'loading' && !document.documentElement.doScroll) ) { callback(); } else { document.addEventListener('DOMContentLoaded', callback); }; Теперь ты можешь быть уверен что как только DOM построен твои кодики выполнятся 2) Достать значения всех чекнутых чекбоксов можно так [].forEach.call(document.querySelectorAll('[type="checkbox"]:checked'), function (item) { console.log(item.value); }) |
Часовой пояс GMT +3, время: 13:48. |