Wnyr

работа кнопок с условием ЕСЛИ

Recommended Posts

Прошу прощения, но нужна Ваша помощь.

возможно ли сделать условие, при котором кнопки сверху, будут работать, типа если это город, один множитель, если это межгород другой множитель.

Грубо говоря: если город стоимость остается как в формуле ниже, если межгород, умножается например на 2.

    <div class="switch">
      <input type="radio" name="tax" value="1" id="q" class="input" checked>
      <label for="q" class="label">Город</label>
      <input type="radio" name="tax" value="2" id="w" class="input">
      <label for="w" class="label">Межгород</label>
    </div>
    <input type="nomber" id="a" class="input" placeholder="km">
    <input type="nomber" id="b" class="input" placeholder="min">
    <input type="reset" id="e" value="Сброс" class="button">
	  <script>
        window.onload = function(){
            var inp = document.querySelectorAll('.input');
            for(var i = 0; i < inp.length; i++){
                inp[i].oninput = calc;
            }      
            function calc(){
                a = document.getElementById('a').value;
                b = document.getElementById('b').value;
                d = 85+(10*a)+(5*b);
                e = d-d*0.1;
                document.getElementById('e').value = e ;
            }
        }
    </script>

 

Share this post


Link to post
Share on other sites

Делаете проверку - если отмечен инпут межгород, то считать по такой-то формуле, иначе считать по другой.

Share this post


Link to post
Share on other sites
7 часов назад, AlexZaw сказал:

Делаете проверку - если отмечен инпут межгород, то считать по такой-то формуле, иначе считать по другой.

это я понимаю, только реализовать не получается=(

если есть возможность, сделать пример, без формул и т.д. я это уже и сам смог бы дописать

Share this post


Link to post
Share on other sites

удалил, разобрался, всем спасибо=)

Edited by Wnyr
разобрался

Share this post


Link to post
Share on other sites
var inp = document.querySelectorAll('.input, .reg_input')

Синтаксис:

elementList = document.querySelectorAll(selectors);

где

  • elementList - статическая коллекция элементов.
  • selectors - строка, содержащая, через запятую, один или более CSS селектор.

Share this post


Link to post
Share on other sites

еще один нюанс подскажите плз, с компьютера норм работает, с телефона все работает, но не переключаются город и межгород

Share this post


Link to post
Share on other sites

Код, представленный тут: 

 работает в iPhone X как ожидается

Share this post


Link to post
Share on other sites
28 минут назад, klierik сказал:

var inp = document.querySelectorAll('.input, .reg_input')

Синтаксис:


elementList = document.querySelectorAll(selectors);

где

  • elementList - статическая коллекция элементов.
  • selectors - строка, содержащая, через запятую, один или более CSS селектор.

спасибо большое, как раз тоже разобрался=))

8 минут назад, klierik сказал:

Код, представленный тут: 

 работает в iPhone X как ожидается

результат - можешь плз глянуть, у меня на iphone 7 plus,  не получается переключаться, то бишь, включен город, вводишь км и мин, все ок, но когда переключаешь на межгород, он сразу не пересчитывает, а работает так, нажал межгород, стереть одно значение, снова его вбил, и уже считает по межгороду тарифу.

Share this post


Link to post
Share on other sites
13 минут назад, Wnyr сказал:

включен город, вводишь км и мин, все ок, но когда переключаешь на межгород, он сразу не пересчитывает, а работает так, нажал межгород, стереть одно значение, снова его вбил, и уже считает по межгороду тарифу.

а как должно работать?

Share this post


Link to post
Share on other sites
3 минуты назад, klierik сказал:

а как должно работать?

ввел только два значения (км и мин) и оно сразу, автоматом, считает внизу результат, если переключил на межгород, сразу же пересчитало по другой формуле.

а сейчас лично у меня:

на компьютере все работает как и должно.

на телефоне: ввел км и мин, показало результат, все ок, потом переключился с этими же вводными на межгород, и ничего не происходит, дальше берешь например мин (12) стираешь 2, и снова пишешь 2, и он уже пересчитывает по формуле межгорода.

 

хотя если все ввожу сюда, то тут работает норм

http://jsfiddle.net/epnyj642/

Share this post


Link to post
Share on other sites

могу предположить что на iPhone 7 в браузере проблемы с обработкой oninput, в некоторых старых браузерах данное событие работает только на полях ввода, а в IE9, на сколько я помню не срабатывает при удалении символа.
Попробуйте использовать событие нажатия клавиши и получение фокуса для пересчета результата

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Member Statistics

    46,251
    Total Members
    3,128
    Most Online
    shottywork
    Newest Member
    shottywork
    Joined
  • Recently Browsing   0 members

    No registered users viewing this page.



  • Спрашивают сейчас

  • Пишут сейчас

    • Создали большой гибкий сайт на тематику "Продажа лекарств от Гепатита" Сделано: - С нуля разработана концепция и структура сайта;
      - Разработан стильный и современный дизайн;
      - Качественная верстка и программирование сайта (быстрая загрузка, чистый, валидный код);
      - Натянули на Wordpress;
      - Подобрали хостинг и домен для клиента, установили и настроили сайт.
      - бонусом предоставили рекомендации по оптимизации и раскрутке сайта от нашего СЕОшника Клиент получил гибкую платформу, которая максимально удобная как для администратора, так и для покупателей сайта.
      Наполнять сайт текстами клиент предпочел сам.
      Сделали для клиента текстовую, а также видео инструкцию по управлению сайтом:
      https://www.youtube.com/watch?v=PREmX06KayQ
      https://www.youtube.com/watch?v=Kbh4CW4pui4 Ссылка на сайт http://sofosbuvir-daklatasvir.ru/ Срок изготовления сайта - 1 месяц. Если вам нужен качественно представить свою услугу, товары или компанию пишите по контактам ниже, сделаем вам крутой веб-ресурс, будь то Landing Page, Сайт многостраничник, Интернет-магазин, группа в соц сетях. 
      По невысокой цене и разумные сроки Контакты: Телеграм: @Nikker
      Скайп: smo_perviy
      E-Mail: Golllandec@gmail.com    
    • Внимание - Акция - от AlfaHoster!!

      Представляем наш новый тариф - Бесплатный Хостинг!
      Параметры тарифа: SSD -150Mb, RAM - 128Mb, MySQL 5.5.6 -2
      Все подробности параметров тарифа смотрите на страничке сайта хостинг-компании AlfaHoster
      Теперь практически любой может воспользоваться услугами хостинга - бесплатно.
      Поспешите воспользоваться моментом - и протестировать наши услуги, акция ограничена во времени!
      _________________
      AlfaHoster.com - надежный и недорогой хостинг для сайтов
    • Не соглашусь с Вами. Вот вам 2 очень простых примера. LESS: @color: red; a { color: @color; } @color: blue; Итог: a { color: blue; }   SASS: $color: red; a { color: $color; } $color: blue; Итог: a { color: red; } Разница в обоих результатах совершенно разная. Этим успешно можно пользоваться. Вариант с LESS шикарно решает задачи, когда требуется "сквозная" конфигурация проекта (внесение изменений в конфигурацию на любом этапе выполнения). Вариант с SASS потребует от разработчика в начале определять переменные, и лишь потом ими пользоваться, не имея возможности влиять на их значение в любой момент выполнения.
  • Popular Contributors