在Timer's Tick事件中注册客户端脚本

本文关键字:事件 注册 客户端 脚本 Tick Timer | 更新日期: 2023-09-27 18:01:27

我正在尝试在计时器的tick事件中注册脚本,但没有任何事情发生,

protected void UpdateTimer_Tick(object sender, EventArgs e)
        { 
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "script", "ShowDialog()", true);
        }

试过ScriptManager.RegisterStartupScript,但它不起作用。

在Timer's Tick事件中注册客户端脚本

RegisterClientScriptBlock将只在页面首次加载时工作。当你在服务器上的后台线程上调用它时,你不可能期望它工作。

你需要注册一个客户端脚本块来启动一个客户端定时器-查看javascript setTimeout

。在页面加载

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "script", "window.setTimeout(ShowDialog, 1000);", true);

或带参数…

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "script", "window.setTimeout(function(){ShowDialog(arg1,arg2);}, 1000);", true);