1

我有一个函数想用来在我的 aspx 页面中调用 js 函数。我正在使用 ClientScript 路由。但是,我查了几个论坛,它似乎并没有工作。我希望它很简单……我已经尝试过使用和不使用“页面”。

我的背后代码:

   protected void btOpen_Click(object sender, EventArgs e)
    {
        Session["demog"] = 144;
        Page page = HttpContext.Current.CurrentHandler as Page;
        page.ClientScript.RegisterStartupScript(this.GetType(), "closeWindow", "closeWin();", true);
    }

js函数:

    <script type="text/javascript">

        function closeWin() {
            alert("closing!");
              GetRadWindow().close();
          }
        function GetRadWindow() {
            var oWindow = null;
            if (window.radWindow)
                oWindow = window.radWindow;
            else if (window.frameElement.radWindow)
                oWindow = window.frameElement.radWindow;
            return oWindow;
        }
      </script>


            <telerik:RadButton ID="btnOpen" runat="server" Text="Open" OnClick="btOpen_Click">
                               <Icon PrimaryIconCssClass="rbOpen" PrimaryIconLeft="4" PrimaryIconTop="4"></Icon>
                          </telerik:RadButton>
               </telerik:RadAjaxPanel>

我有一个取消按钮,它调用 closeWin() 作为它的 onClientClick 并且工作正常。可能是因为我使用的是 onClick,而不是 onClientClick 之类的吗?

4

1 回答 1

2

尝试使用 ScriptManager

ScriptManager.RegisterStartupScript(Page, typeof (Page), UniqueID, 
  "closeWin();", true);
于 2013-08-30T21:53:40.153 回答