C# Sys.WebForms.PageRequestManager.getInstance()多次调用(每次请求递增)
我需要在刷新页面上的所有内容之后调用一个函数,并且每次调用该函数时应该只调用一次。所以我写了下面的代码 出于某种原因,在控制台中记录了两次message1+message2之后,我得到了一个“UncaughtTypeError:a[b]不是函数” 如果我将remove_pageLoaded代码移动到console.log(message1,message2)下,它将导致控制台中无限次的日志记录 如果我完全删除“remove_pageLoaded”,则每次添加实例“PageRequestManager”并在每次请求时递增 我发现了一个非常类似的问题,但这些是我刚才提到并尝试过的答案。 我甚至创建了一个变量,并将Sys.WebForms.PageRequestManager.getInstance()分配给该变量。它也不起作用C# Sys.WebForms.PageRequestManager.getInstance()多次调用(每次请求递增),c#,ajax,C#,Ajax,我需要在刷新页面上的所有内容之后调用一个函数,并且每次调用该函数时应该只调用一次。所以我写了下面的代码 出于某种原因,在控制台中记录了两次message1+message2之后,我得到了一个“UncaughtTypeError:a[b]不是函数” 如果我将remove_pageLoaded代码移动到console.log(message1,message2)下,它将导致控制台中无限次的日志记录 如果我完全删除“remove_pageLoaded”,则每次添加实例“PageRequestManag
function sendMessage(msg1, msg2)
{
try
{
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(fnSendMessage(msg1, msg2));
Sys.WebForms.PageRequestManager.getInstance().remove_pageLoaded(fnSendMessage(msg1, msg2));
}
catch (e)
{
console.log(e.message+" - Error in sendMessage");
}
};
function fnSendMessage(message1, message2)
{
console.log(message1 + message2);
};
您应该将对函数的引用传递给
add\u pageLoaded
和remove\u pageLoaded
。现在,您正在调用函数并只传递其返回值(未定义,因为它不返回任何内容)。请改为尝试添加页面加载(fnSendMessage)。未获取,请您澄清!