2010-08-26 2 views
0

Каков наилучший способ, чтобы события восстанавливались после обратного вызова UpdatePanel?jQuery с ASP.Net UpdatePanel

Предложения Я видел:

function pageLoad(sender, args){ 
    //bind events here. 
} 

или

использовать метод .live(eventType, handler) сначала связать события

или

var prm = Sys.WebForms.PageRequestManager.getInstance(); 

prm.add_endRequest(function() { 
    //bind events here. 
}); 

ответ

0

Если код событийная, скажем, click обработчики (или любое другое событие барботирования), например, нас e .live().

Если вам нужны вещи, которые не являются событий, например. плагины, виджеты и т. д. Затем используйте add_endRequest(func) и запустите любые плагины там, поэтому они запускаются всякий раз, когда заканчивается UpdatePanel (получает новые элементы после частичной обратной передачи).

+0

Если вам нужно было обойти оба сценария, вы бы хотели сделать то и другое, или было бы приемлемо просто пойти с 'add_endRequest (func)'? – Homer

+0

@Homer - я бы использовал '.live()', когда это было возможно, только поместил вещи, которые * нужно * запускать после частичной обратной передачи в 'add_endRequest', что меньше для обратной передачи и гораздо более быстрая страница для вашего пользователь. –

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