Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在页面上的每个updatepanels部分回发事件之后调用函数_Javascript_Jquery_Asp.net_Updatepanel - Fatal编程技术网

Javascript 在页面上的每个updatepanels部分回发事件之后调用函数

Javascript 在页面上的每个updatepanels部分回发事件之后调用函数,javascript,jquery,asp.net,updatepanel,Javascript,Jquery,Asp.net,Updatepanel,我正在处理一个自定义控件,该控件正在包含许多UpdatePanel的网页上使用。在我的自定义控件中,jquery得到了广泛的使用,并且还使用了许多插件。现在,在每次updatepanel的回发中,控件会一次又一次地呈现,它也会再次加载javascript资源,但不会再次调用javascript函数。这导致了一个问题,我的控件中的许多元素必须由jquery插件转换成这样或那样,但这些元素不能正常工作(javascript函数不能简单地调用) 现在我尝试了很多解决方案,包括这个问题中提到的那些 但这

我正在处理一个自定义控件,该控件正在包含许多UpdatePanel的网页上使用。在我的自定义控件中,jquery得到了广泛的使用,并且还使用了许多插件。现在,在每次updatepanel的回发中,控件会一次又一次地呈现,它也会再次加载javascript资源,但不会再次调用javascript函数。这导致了一个问题,我的控件中的许多元素必须由jquery插件转换成这样或那样,但这些元素不能正常工作(javascript函数不能简单地调用)

现在我尝试了很多解决方案,包括这个问题中提到的那些 但这是徒劳的。以前,当我的页面只包含一个updatepanel时

pageLoad(sender, Args);
functon工作得很好,现在多个UpdatePanel也不工作了

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

function pageLoaded() { }

如果您不希望控件在每次UpdatePanel的回发时刷新,那么对于将控件托管到
条件
的UpdatePanel,设置
UpdateMode
,这样它将仅在其自己的触发器或子控件触发时刷新(Ref:)

也就是说,您不必在客户端手动添加
pageLoaded
事件处理程序。使用intristic
pageLoad
函数,该函数可在每次页面加载时触发,无论是通过UpdatePanel还是其他方式(参考:)

激发JS函数的另一种方法是从服务器端代码。每次控件加载或执行某些服务器端初始化时,请使用
ClientScript.RegisterStartupscript
调用,以确保稍后在客户端上调用JS函数

ClientScript.RegisterStartupscript(this.GetType(),"myFunc", "myFunction();", true);

Ref:

只是为了确认-当UpdatePanel刷新时-您需要调用JavaScript函数吗?是的,很抱歉回复太晚。因为我的国家有选举,所以我不能去。