2013-05-01 4 views
1

У меня есть небольшая функция jquery, которая открывает всплывающее окно.Функция jquery внутри функции pageload срабатывает несколько раз

Поскольку мой сайт основан на asp.net и использует панели обновления, я помещаю функцию внутри функции ajax pageLoad(), чтобы обеспечить ее работу после каждой обратной передачи.

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

Вот функция:

function pageLoad() { 
    $("a.popup").click(function (e) { 
     if (e.preventDefault) { 
      e.preventDefault(); 
     } 
     else { 
      e.returnValue = false; 
     } 
     window.open(this.href, this.target, 'menubar=0, toolbar=0, location=0, directories=0, status=0, scrollbars=1, resizable=0, width=1010, height=640, left=50, top=50'); 
    } 
} 

Я в убыток, как остановить это происходит. Любой совет?

ответ

2

Обработчик событий получает переустановку каждый раз при загрузке страницы. Попробуйте следующее:

$("a.popup").unbind('click').click(function (e) { 
+0

Спасибо clav, что сделал трюк – dotnetnoob

Смежные вопросы