更新面板刷新后如何执行javascript(无法获取Sys.WebForms.PageRequestManager.getInstance()。add_endRequest();工作)

时间:2011-07-28 07:39:54

标签: ajax

使用一些日期时间选择器插件我无法在ajax更新面板完成后重新绑定它们。 我在页面内部使用了包含日期和时间的jquery插件的控件。 它最初工作正常但是当更改下拉列表时,它的更新面板重新绑定并且不再绑定jquery功能。

1 个答案:

答案 0 :(得分:1)

问题是更新面板刷新dom,更新面板内的每个子元素在更新面板的ajax请求时重新呈现。

<script>
 function rebindJqueryPlugins() {
 jQuery('.example').datetimepicker();
 }
 if( typeof(Sys) != "undefined" )
 {
 prm = Sys.WebForms.PageRequestManager.getInstance();
 Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function(){
 //rebinding elements with jquery plugins once we get reponse from server
 rebindJqueryPlugins();
 });
 }
 else
 {
 //we have a problem with ScriptManager
 }

//on page load calling jquery plugins to bind elements
jQuery (function(){
//console.log("najam is great");
rebindJqueryPlugins();
});
</script>