Как установить изменения по умолчанию при загрузке страницы jquery? - PullRequest
1 голос
/ 19 апреля 2020

Я создал метод изменения для окна выбора моего проекта. При выборе конкретного параметра это в основном показывает и скрывает div, который прекрасно работает. Теперь моя проблема заключается в том, когда страница в первый раз загружает это шоу и скрывает неработающий первый раздел формы по умолчанию. Можно ли сделать так, чтобы эта функция обмена также работала при первой загрузке страницы.

$('.contact-form').on('change', (e) => {
    var selectedId = $(e.currentTarget).val();
    var listofforms = $("#discount").data("display-for").split(",");
    if (listofforms.indexOf(selectedId) !== -1) {
        $("#discount").collapse('show');
    }
    else {
        $("#discount").collapse('hide');
    }
});

Ответы [ 2 ]

2 голосов
/ 19 апреля 2020

Вот вам go с решением

function changeMethod(selectedId) {
  var listofforms = $("#discount").data("display-for").split(",");
  if (listofforms.indexOf(selectedId) !== -1) {
    $("#discount").collapse('show');
  }
  else {
    $("#discount").collapse('hide');
  }
}

changeMethod($('.contact-form').val())

$('.contact-form').on('change', (e) => {
  changeMethod($(e.currentTarget).val());
});

Вам нужно переместить свой код за пределы события изменения, чтобы я сохранил ваш существующий код в методе changeMethod.

Затем вызовите метод из на места

  1. От вас изменить метод события
  2. OnLoad JS файла
0 голосов
/ 19 апреля 2020

Можно ли включить триггер при изменении страницы при загрузке страницы

Да, вам просто нужно изменить событие при изменении с e.currentTarget на this как на загрузка страницы e.currentTarget будет нулевой, но this всегда указывает на текущий элемент, например:

$('.contact-form').on('change', function() {
  var selectedId = $(this).val();
  // Your other logic here
});

, и чтобы вызвать это событие изменения при загрузке страницы, просто добавьте .change(), наконец, как:

$('.contact-form').on('change', function() {
  var selectedId = $(this).val();
  // Your other logic here
}).change();   //<---- here
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...