JQuery можно выполнить только один раз для загрузки страницы

0

Сценарий jQuery - это всплывающее окно на моем веб-сайте, когда вы нажимаете кнопку. Кнопки находятся в таблице, в цикле foreach. Там все прекрасно работает. Проблема в том, что если я нажимаю на продукт 1, всплывающее окно работает так, как должно, но когда я закрываю окно и пытаюсь его всплывать снова, оно не работает. Он будет работать снова, если обновить страницу. Кажется, что работает только один раз за кнопку, тогда мне нужно обновить страницу.

Скрипт jQuery находится здесь:

;
            (function ($) {
                // DOM Ready
                $(function () {
                    // Binding a click event
                    // From jQuery v.1.7.0 use .on() instead of .bind()
                    $('.wiki-button').bind('click', function(e){
                    var $tr = $(e.currentTarget).closest('tr'), 
                    $content = $tr.find('#wiki-content');
                    $content.bPopup();
                    });
                });
            })(jQuery);

Заранее спасибо :)

РЕДАКТИРОВАТЬ:

Большое спасибо за все ответы. Остальная часть кода вы можете посмотреть на этот код pastebin! Pastebin

  • 0
    Ну, вы прочитали комментарий, который вы скопировали? .on() насчет .on() и .bind() ? Вы дали ему шанс? Также убедитесь, что вы проверили консоль после нажатия кнопки, я на 99% уверен, что произойдет ошибка ...
  • 0
    Похоже, что bPopup () имеет несколько флагов, которые не обновляются при закрытии всплывающего окна. Я не знаком с этим плагином, но есть явный метод close () или что-то подобное? Вам может понадобиться посмотреть, что делается в этом методе, и сравнить его с тем, что происходит, когда вы закрываете всплывающее окно, как вы это делаете.
Показать ещё 7 комментариев

2 ответа

0

Я думаю, что вы повторяете id wiki-content

Извините, что добавить в качестве ответа.

0

использовать следующее

$(document).on('click','.wiki-button', function(e){
  • 1
    Мы должны выяснить, добавляются ли эти элементы динамически, прежде чем сказать, что это решение.
  • 0
    Да, я знаю, но это будет работать во всех случаях, и он / она просто хочет выполнять свою работу быстро, поэтому он пришел к stackoverflow.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню