|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.10.2016, 17:03 | #1 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Подскажите с кодом, плиз!
Код работает, добавил некоторые формулы и условия, то что добавил не работает. В кратце чего хочу, при нажатии галочки на chekbox появляются числа (2, 3, 4, 5) в зависимости от условия, но нужно так же чтобы к результату "result" прибавлялись числа (60, 90, 120, 150) в зависимости от числа (2, 3, 4, 5) т.е. если число 2 то к результату прибавляется 60 и т.д.
Код HTML:
<!doctype html> <html lang="ru"> <head> </head> <body> <select name="indexCombobox1" size="1" id="box"> <option value="500">А</option> <option value="520">Б</option> <option value="520">В</option> <option value="560">Г</option> <option value="650">Д</option> </select> <input type="number" id="editbox1" name="indexEditbox1" value="0.4" autocomplete="off" min="0.4" max="4" step="0.01" onkeyup="stCalc();"> <input type="number" id="editbox2" name="indexEditbox1" value="0.4" autocomplete="off" min="0.4" max="4" step="0.01"> <input type="button" id="button" name="" value="Расчет" onclick="Start();"> <div id="wb_rezult" class="style3"> <span style="color:#00FF00;font-family:'Times New Roman';font-size:21px;"><strong><em>Результат</em></strong></span></div> <input type="checkbox" id="check" name="ck" value="on"> <div id="wb_zk" class="style3"> </div> <script> function Start(){ var chislo = document.getElementById('editbox1').value; var chislo1 = document.getElementById('editbox2').value; var spisok = document.getElementById('box').value; var resultDiv = document.getElementById('wb_rezult'); var result = 0; if (chislo < 0.4 || chislo > 4) { alert('Ширина и Высота должны быть от 0,4 до 4 м!'); } else if (chislo1 < 0.4 || chislo1 > 4) { alert('Ширина и Высота должны быть от 0,4 до 4 м!'); } else { result = (chislo * chislo1 * spisok).toFixed(2); resultDiv.innerHTML = result; } } resField = document.getElementById('wb_zk'), ckeckBox = document.getElementById('check'), resFieldFirstVal = resField.innerHTML, counts = [2, 3, 4, 5]; ckeckBox.addEventListener('change', showHideRes.bind()); ckeckBox.addEventListener('change', stCalc.bind()); ckeckBox.addEventListener('change', dtCalc.bind());//добавил editbox1.addEventListener('input', stCalc.bind()); function showHideRes(elem) { if (ckeckBox.checked){ resField.style.display = 'block'; } else { resField.innerHTML = resFieldFirstVal; resField.style.display = 'none'; } } function stCalc() { if (ckeckBox.checked) { if (editbox1.value >= 0.4 && editbox1.value <= 1.8) { resField.innerHTML = counts[0]; } else if (editbox1.value >= 1.81 && editbox1.value <= 2.5) { resField.innerHTML = counts[1]; } else if (editbox1.value >= 2.51 && editbox1.value <= 3.5) { resField.innerHTML = counts[2]; } else if (editbox1.value >= 3.51 && editbox1.value <= 4) { resField.innerHTML = counts[3]; } } } function dtCalc() { s = [60, 90, 120, 150];//добавил if (ckeckBox.checked) { if (resField.innerHTML = counts[0]) { wb_result.innerHTML = (s[0] + +result).toFixed(2);//добавил } else if (resField.innerHTML = counts[1]) { wb_result.innerHTML = (s[1] + +result).toFixed(2);//добавил } else if (resField.innerHTML = counts[2]) { wb_result.innerHTML = (s[2] + +result).toFixed(2);//добавил } else if (resField.innerHTML = counts[3]) { wb_result.innerHTML = (s[3] + +result).toFixed(2);//добавил } } } </script> </body> </html> ____ для форматирования на форуме можно использовать теги [CODE][ /CODE] или [HTML] [ /HTML] Модератор
Еду медленно, но верно!
Последний раз редактировалось Serge_Bliznykov; 14.10.2016 в 17:10. |
14.10.2016, 17:57 | #2 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Советую нажимать F12 когда находишся на вэб странице, и выбирать вкладку console/консоль.
И перезапускать срипт. Как я и сделал. И сразу вылезла ошибка.. Твой код ничего не знает про "wb_result". Так как ты ему ничго про эту переменну не сказал. PHP код:
Да и вообще, вот это не правильно потому что ты обращаешся к елементам разметки, которых еще может не быть. Нуж декларировать переменные в глобальной облости видимости, если они будут нужны, но присваивать им значения связанное с раеткой, только после полной загрузки всего DOMa. Вот такой код будет безопастным и всегда рабочим. PHP код:
PHP код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
15.10.2016, 06:31 | #3 | |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Цитата:
Сделал так, но не работает Код:
Еду медленно, но верно!
|
|
15.10.2016, 06:34 | #4 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Можно поподробнее не понял как это сделать?
Еду медленно, но верно!
|
15.10.2016, 06:43 | #5 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Все понял))) это через IE.
Еду медленно, но верно!
|
15.10.2016, 06:59 | #6 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Вы правы, посмотрел через отладчик, хорошая штука, знал бы раньше "чайник"))), надо привести все в порядок, буду работать, спасибо.
Еду медленно, но верно!
|
15.10.2016, 10:21 | #7 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Во всех браузерах это есть. (Chrome, FF, IE)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
15.10.2016, 11:19 | #8 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Еду медленно, но верно!
|
15.10.2016, 11:27 | #9 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Если не по F12, то в меню по ПКМ должно быть.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
15.10.2016, 12:36 | #10 |
Форумчанин
Регистрация: 14.10.2016
Сообщений: 406
|
Есть вопросы
Код:
Еду медленно, но верно!
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
подскажите плиз | Alex26RusLink | Общие вопросы C/C++ | 10 | 21.07.2009 19:03 |
Подскажите, что не так с кодом | Grisha248 | Помощь студентам | 2 | 24.05.2009 16:41 |
Подскажите плиз | Panik666 | Общие вопросы Delphi | 1 | 22.04.2009 23:19 |
Подскажите с кодом процедуры ButtonClick | KARUSHEV | Помощь студентам | 3 | 23.03.2009 14:01 |
подскажите плиз! | Lestrini | Общие вопросы Delphi | 6 | 03.10.2008 17:23 |