我有一个 UpdatePanel 并想在回发后执行一个 javascript 操作,我的所有页面都使用全局pageLoad(sender, args)
,所以我不能pageLoad(sender, args)
为这个特定事件使用 a,我尝试了以下 2 种方法:
//Global pageLoad, executes in all pages
function pageLoad(sender, args) {
myGlobalCode();
try {localPageLoad(sender, args)}
catch (err) {}
}
// This is in the page with the update panel
function localPageLoad(sender, args) {
if ($('#AfterPostback').val() == 'SHOWTOOLBOX')
// etc....
}
这里的问题是同步性,如果我在这段代码中设置调试警报一切正常,但如果我在没有警报的情况下执行它什么都不做,所以我猜它与文档完成有关
我尝试的另一件事是在部分回发触发的事件中使用 ScriptManager:
cstext1.Append(String.Format("alert('CS TOOL'); showToolbox({0});", AfterPostbackParams.Value))
ScriptManager.RegisterClientScriptBlock(Me, GetType(Page), "InitPage", cstext1.ToString(), True)
我发现同样的问题,如果我设置调试警报一切正常,如果我像这样运行代码它不起作用。
有任何想法吗?谢谢