从代码隐藏调用js函数不起作用?

时间:2013-08-30 20:53:46

标签: javascript asp.net

我有一个函数,我想在我的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或其他东西吗?

1 个答案:

答案 0 :(得分:2)

尝试使用ScriptManager

ScriptManager.RegisterStartupScript(Page, typeof (Page), UniqueID, 
  "closeWin();", true);