ScriptManager.RegisterStartupScript 不工作

ScriptManager.RegisterStartupScript not working

我正在使用 ajaxToolkit 来显示模态弹出窗口。在弹出面板内,我有一个具有一些控件的中继器,其中一个是具有 onClick 事件的按钮。

在后面的代码中,我声明了 onClick 函数,并在其中注册了一个脚本。

string str = "Are you sure?";
this.ClientScript.RegisterStartupScript(typeof(Page), "Popup", "ConfirmApproval('" + str + "');", true);

和首页的javascript功能:

    function ConfirmApproval(objMsg) {
    if (confirm(objMsg)) {
        return true;
    } else {
        return false;
      }
    }

如果我在一个新的 Web 项目中使用这个确切的代码,一切都会完美无缺,但如果我将它添加到 onClick 事件中,我会在没有任何反应之前说出来。此外,无论我添加还是删除 registerScript 部分,onClick 方法中的所有其他内容都可以正常工作。

有人知道为什么会这样吗?

为什么不在 Button 上添加 OnClientClick 事件? 类似于:

OnClientClick="return ConfirmApproval('Are you sure?');"

应该完成工作