ASP.Net:需要在更新面板加载完成时运行javascript

ASP.Net:需要在更新面板加载完成时运行javascript,asp.net,javascript,Asp.net,Javascript,我需要在更新面板完全加载(我想滚动)时运行javascript函数,而不是在初始页面加载时 请建议 谢谢未经测试 <script type="text/javascript"> var app = Sys.Application; app.add_init(ApplicationInit); function ApplicationInit(sender) { var prm = Sys.WebForms.PageRequestManager.getInstan

我需要在更新面板完全加载(我想滚动)时运行javascript函数,而不是在初始页面加载时

请建议

谢谢

未经测试

<script type="text/javascript">
  var app = Sys.Application;
  app.add_init(ApplicationInit);

  function ApplicationInit(sender) {
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    if (!prm.get_isInAsyncPostBack())
    {
        prm.add_pageLoaded(PageLoaded);
    }
  }

  function PageLoaded(sender, args) {
    //Do something
  }

</script>

var-app=Sys.Application;
app.add_init(ApplicationInit);
函数应用单元(发送方){
var prm=Sys.WebForms.PageRequestManager.getInstance();
如果(!prm.get_isInAsyncPostBack())
{
prm.添加页面加载(页面加载);
}
}
已加载函数页(发送方,参数){
//做点什么
}

这是更新后获取结束事件的方法

<script type="text/javascript">
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm.add_endRequest(EndRequest);

    function EndRequest(sender, args) {
    }
</script>

var prm=Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(endRequest);
函数EndRequest(发送方,参数){
}

如果您使用的是AJAX,那么我发现在返回异步回发时向用户发出警报的唯一方法是向PageRequestManager添加一个“end request”处理程序

通过这种方式,您可以告诉请求管理器在从AJAX的异步回发事件返回时运行javascript函数

执行此操作的代码是:

function load()

{
   Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
其中“EndRequestHandler”将是您要调用的javascript函数的名称。 在标签的Onload事件中调用上述函数:

<body onload=”load()”>

function EndRequestHandler()

{

          alert(“You record has been saved successfully”);

}
现在,您可以在客户端EndRequestHandler函数中检查此隐藏字段的值,并根据其值向用户发出不同的警报:

function EndRequestHandler()
{
     if (document.getElementById(‘<%= hdnValue.ClientID %>’).value == “do this”)

     { 
          alert(“You record has been saved successfully”);
     } 
     else
     {
          alert(“There is an error”);
     }
 }
函数EndRequestHandler()
{
if(document.getElementById(“”).value==“执行此操作”)
{ 
警报(“您的记录已成功保存”);
} 
其他的
{
警报(“有错误”);
}
}

如果使用jquery,则可以使用以下代码

这是为了在更新面板更新5秒后显示保存的消息并隐藏该消息

function pageLoad() {
            window.Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
        }
        function EndRequestHandler()
        {
            window.setTimeout(function () {
                var label = window.$get('<%= lblMsg.ClientID%>');
                if (label != null) { label.style.display = 'none'; }
            }, 5000);
        }
函数pageLoad(){
window.Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
函数EndRequestHandler()
{
setTimeout(函数(){
var标签=窗口。$get(“”);
如果(label!=null){label.style.display='none';}
}, 5000);
}
function EndRequestHandler()
{
     if (document.getElementById(‘<%= hdnValue.ClientID %>’).value == “do this”)

     { 
          alert(“You record has been saved successfully”);
     } 
     else
     {
          alert(“There is an error”);
     }
 }
function pageLoad() {
            window.Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
        }
        function EndRequestHandler()
        {
            window.setTimeout(function () {
                var label = window.$get('<%= lblMsg.ClientID%>');
                if (label != null) { label.style.display = 'none'; }
            }, 5000);
        }