1

我正在尝试在计时器的滴答事件中注册脚本,但什么也没发生,

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

也试过ScriptManager.RegisterStartupScript了,但它不起作用。尝试调用简单警报但效果不佳。

4

1 回答 1

2

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);
于 2013-02-27T13:30:13.277 回答