Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
-7 / 1 / 0
Регистрация: 24.08.2013
Сообщений: 26

value input radio прибавляется к расчёту результата только после клика в любом другом input

27.08.2013, 22:31. Показов 1000. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые, видимо плёвый вопрос. но не могу найти внятного объяснения/решения.

Написал калькулятор всё работает, но раздражает один момент.
Есть 3 радиокнопки, так вот при выборе любой из них сумма формулы не изменяется, до тех пор пока не кликнешь в любом другом поле формы.
Как быть?
Результат выводится при нажатии на кнопку, может на эту кнопку ещё чего нибудь повесить, чтобы значение input radio обнавлялось?

ЗЫ: пробовал фокус с радиокнопок на другой input перебрасывать, но это не помогает. Что-то попадалось в и-нете про onchange, но так и не понял как ето пользовать

значения радио помещаются в var premises нормально и корректно, но не вычисляются на лету при переключении между ними.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
    jQuery(document).ready(function($){
        window.onload = function(){
        var intc = document.querySelectorAll(".int");
        var result = document.getElementById("total");
        
        for(var n = 0; n <= intc.length - 1; n++){
            intc[n].addEventListener("keyup", function(){
 
                var сamcorders_a = (parseFloat(intc[0].value))*0.835;
                var сamcorders_b = (parseFloat(intc[1].value))*0.501;
                var amt_сamcorders = (parseFloat(intc[0].value))+(parseFloat(intc[1].value));
                var distance_between = (parseFloat(intc[2].value));
                var max_h = (parseFloat(intc[3].value));
                var psu = (parseFloat(intc[4].value));
                var premises = $("input[id='premises']:checked").val();
                var lifetime = (parseFloat(intc[8].value));
                var cost_of_time = 801;
                
                if(distance_between <= 50){
                    distance_between  = 1;
                }
                else if(50 < distance_between && distance_between <= 70){
                    distance_between  = 1.1;
                }
                else if(70 < distance_between && distance_between <= 100){
                    distance_between  = 1.2;
                }
                else if(100 < distance_between){
                    distance_between  = 1.3;
                }
                if(max_h <= 3){
                    max_h  = 1;
                }
                else if(3 < max_h ){
                    max_h  = 1.3;
                }
                if(psu <= (amt_сamcorders/5)){
                    psu  = 0;
                }
                else if(psu > (amt_сamcorders/5)){
                    psu  = (amt_сamcorders/5)*0.3*1.67;
                }
                
                if(lifetime <= 1){
                    lifetime  = 1;
                }
                else if(1 < lifetime && lifetime <= 3){
                    lifetime  = 1.1;
                }
                else if(3 < lifetime ){
                    lifetime  = 1.2;
                }
                
                var amount = Math.ceil ((сamcorders_a + сamcorders_b) * distance_between * max_h * premises * lifetime * cost_of_time + psu * cost_of_time);
            if(isNaN(amount)){
                    amount = 'Пожалуйста заполните все поля калькулятора';
                }
                result.innerHTML = ( amount);
                
            }, false);
        }
 
    }
$("#button1").click( function() {
$('.bt').css({'display': 'block' });
$('#сamcorders_a').focus();
 
 
});
$(".int").click( function() {
$('.bt').css({'display': 'none' });
});
    });
Добавлено через 9 минут
уточню:
формула при изменении выбора радиокнопки не пересчитывается не только пока не кликнешь в любом другом поле формы, но и пока не изменишь значение в нём только тогда формула перисчитывается правильно с учетом изменений в блоке радиокнопок.

Добавлено через 22 часа 55 минут
Видимо мало изученная проблема (;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.08.2013, 22:31
Ответы с готовыми решениями:

Как вывести input radio в зависимости от выше выбранного input radio
Нужно сделать как бы вывод на странице двух input radion. Выбор пола. Мужчина и Женщина. Если я выбираю Мужчина, то выводятся ниже еще...

Выбор radio input + text input
Всем привет. Никак не могу решить задачу. Суть такая: на странице динамически создаются группы по 3 радио баттона + 1 селект и 1 просто...

php input radio
Здравствуйте! Подскажите как в php определить(перехватить): Надо/ Есть 3 input radio. если чекнуть 1 radio тогда...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.08.2013, 22:31
Помогаю со студенческими работами здесь

Input type=radio
Как с помощью CSS изменить внешний вид радио-кнопки? Какие CSS свойства я могу применить в этой кнопке?

PHP и input -> radio
всем привет!... мне нужно сделать выборку Физ. лица и Юр. лица таким образом: echo &quot; &lt;form method='post'...

Действие с input radio
Нужно сделать чтобы по выбору radio услуга добавлялась в корзину, и чтобы последующее нажатие на radio больше не передавало данных. А если...

Результат input='radio'
Народ привет! Подскажите пожалуйста, как посмотреть что выбрал пользователь, из 5 вариантов? echo &quot;&lt;br&gt; ...

Работа с <input type=radio >
У меня задача выполнять обработку данных запросами в зависимости от выбранного критерием типа: &lt;input type='radio' value='PickDate'...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru