ASP.NET Ajax部分回发和jQuery问题

时间:2010-04-22 14:14:33

标签: jquery asp.net-ajax postback

一个控件包含一些HTML和一些jQuery来处理在单击div中的图像时显示的花哨工具提示。

然后在几个不同的页面上使用该控件,有时在updatePanel中,有时不在。

我有以下代码来处理在更新面板中显示控件时部分回发后加载jQuery。

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);

   function EndRequestHandler(sender, args) {
      $('img.ormdShipping').each(function(){
            $(this).qtip({

        // some qtip options go here
        })
      });
   }

问题是,当控件用于updatePanel以外的任何地方时,jQuery不会加载。我是否需要在EndRequestHandler之外触发的第二个函数?

1 个答案:

答案 0 :(得分:3)

只要在页面加载后调用它,您可以通过在最后添加它来执行此操作:

$(EndRequestHandler);

这将导致代码在UpdatePanel刷新时以及首次加载页面时运行。当你将一个函数传递给jQuery构造函数时,你正在调用jQuery(callback)版本,如果它更容易思考,你就是在做这个的简短版本:

$(document).ready(EndRequestHandler); //or..
$(document).ready(function() { EndRequestHandler(); });