如何使用javascript调用body onunload上的多个函数?

时间:2014-09-01 06:19:15

标签: javascript html asp.net

我试图在body onunload事件中调用两个函数但是没有工作。

以下是我打电话的第一个功能..

function closePopUps() 
{
    if(childPops.length == 0) return; 

      for(i=0; i<childPops.length; i++) 
        {
           childPops[i].close(); 
        }
}

然后第二个功能......

function updateStatus()
{
 PageMethods.UPDATE_STATUS();
}
我打电话给他们就是这样......

<body onunload="closePopUps();updateStatus();">

但第二个功能不起作用。每当我试图只调用updateStatus()函数时,它仍然无效。

3 个答案:

答案 0 :(得分:2)

最好调用一个CombinedMethod来启动对多个方法的调用。

<body onunload="CombinedMethods()">

然后在inside方法中启动对多个方法的调用..

function CombinedMethods()
{
  closePopUps();
  updateStatus();
  M1();
  M2();
  etc_method();
}

答案 1 :(得分:0)

您可以通过以下方式调用您的函数,

$(document).ready(function(){
    window.onunload = function(evt) {
       //call your functions
    };
});

答案 2 :(得分:0)

如果您的第二个功能不起作用,请检查一些事情

  

1.将EnablePageMethods属性设置为true
     2.将您的方法标记为静态并为其提供WebMethod属性(system.web.services;),像这样

[WebMethod]
    public static string sample(string name)
    {
        return  name;
    }

现在尝试像这样访问pagemethod

function updateStatus()
{
 PageMethods.sample("Test");
}

现在你的第二个功能也会起作用。并尝试将这两种方法结合起来,并在一个方法中调用它们。