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

Почему не видно переменную в JS?

В процессе освоения JS, столкнулся с такой ситуацией. Мой код:
Object.prototype.show = function () {
 $('span[data-search]').on('click', function (evt) {
     var data_search = $(this).data('search');

     $('body').on('shown.bs.modal', '.modal', function () {
          $(this).find('button.synConfirm').on('click', function(){
              console.log(data_search);    // Переменную не видно
          });
     });
 }):
});


Тоесть при клике на span открывается модальное окно (Bootstrap 3). Затем при нажатии на кнопку в модальном окне, я должен иметь доступ к значению переменной data-search объявленной в саамом начале, но я не имею к ней доступа... Вопрос: Почему? Ведь я её определил до вызова console.log(),..
Каким образом я её могу получить?
  • Вопрос задан
  • 2455 просмотров
Подписаться 2 Оценить 2 комментария
Решения вопроса 1
@GreatRash
У вас событие на span[data-search] уже отработало. К тому моменту когда срабатывает событие show.bs.modal переменной уже не существует.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
azovl
@azovl Автор вопроса
Вопрос решил переобпределением контекста переменной.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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