Задать вопрос
@m4f1

Как правильно использовать if else?

Имеется форма, в которой есть выбор доставки (константы прописаны для тех элементов, где ничего не должно меняться). Код с toggle отображает или убирает второй элемент для отображения в блоке оплаты. В этом же блоке, при выборе элемента доставки должен меняться текст на нужный и, если человек выбирает пункт в блоке доставки из тех, которые не присутствую в константе, текст должен меняться обратно.
Составил скрипт, но он отказывается работать, где ошибка?
const valuesShow = [ 12,30,55,70,75,299,709,759,769,779  ];
  $('#sample_form_deliv').change(function({ target: { value } }) {
    $('#sample_form_pay .input-label:eq(1)').toggle(valuesShow.includes(+value));
  var text = $('#sample_form_pay');
    if $('#sample_form_deliv').change(function({ target: { value } }) {

      var replaced = text.html().replace(/Наличными/gi, 'Наличными курьеру');
      var replaced = text.html().replace(/Пластиковой картой/gi, 'Картой онлайн');
      text.html(replaced);
    } else {
      var replaced = text.html().replace(/Наличными курьеру/gi, 'Наличными');
      var replaced = text.html().replace(/Картой онлайн/gi, 'Пластиковой картой');
      text.html(replaced);
    })
  });


html код формы, в которой надо изменять текст
<div id="sample_form_pay" class="cart_money b-field clearfix" style="display: block;">
  <fieldset class="b-checkbox-group">
    <legend class="p_header bold">Оплата:</legend>
    <label class="input-label left">
      <input class="b-check-box" type="radio" value="5" name="sample_form_pay">
      <span></span>Наличными
    </label>
    <label class="input-label left b-inline-checkbox">
      <input class="b-check-box" type="radio" value="9" name="sample_form_pay">
    <span></span>Перевод на карту
    </label>
    <label class="input-label left b-inline-checkbox">
      <input class="b-check-box" type="radio" value="14" name="sample_form_pay">
      <span></span>Пластиковой картой
    </label>		
  </fieldset>
</div>
  • Вопрос задан
  • 244 просмотра
Подписаться 2 Простой 13 комментариев
Решения вопроса 1
dollar
@dollar
Делай добро и бросай его в воду.
Скобки обязательны:
if (условие) действие;

Если больше одного действия, то они оформляются в блок:
if (условие) { действие; действие; }

С else всё то же самое, только нет условия.
if (условие) действие; else действие;

Хотя в качестве действия снова может быть ветвление. Каждое условие в скобках, иначе интерпретатор не сможет понять, где кончается условие и начинается действие.
if (условие) действие; else if (условие) действие;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы