为什么IsClientScriptBlockRegistered在调试模式下总是返回false

本文关键字:返回 false 模式 IsClientScriptBlockRegistered 调试 为什么 | 更新日期: 2023-09-27 18:00:28

在后面的代码中,我有以下代码:

if (!Page.ClientScript.IsClientScriptBlockRegistered("Script1"))
   Page.RegisterClientScriptBlock("Script1", "<script type='"text/javascript'">alert('test');</script>");

这段代码似乎工作得很好,但当我尝试调试它时,Page.ClientScript.IsClientScriptBlockRegistered("Script1")总是返回false。我甚至打开了快速观察窗口,能够在_clientScriptBlock下找到脚本。

知道为什么吗?

为什么IsClientScriptBlockRegistered在调试模式下总是返回false

使用GetType()方法参数来确保隔离正确的脚本块,如下所示:

if (!Page.ClientScript.IsClientScriptBlockRegistered(GetType(), "Script1"))
{
    Page.RegisterClientScriptBlock(GetType(), "Script1", 
        "<script type='"text/javascript'">alert('test');</script>");
}