3

我真的不知道javascript。我正在使用以下代码在单击按钮时创建一个弹出窗口,以获取一些在线 ASP.NET 服务器控件/HTML:

<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.3.2.js" type="text/javascript"></script>
<script src="http://ajax.microsoft.com/ajax/beta/0911/Start.debug.js" type="text/javascript"></script>
<script src="http://ajax.microsoft.com/ajax/beta/0911/extended/ExtendedControls.debug.js"
    type="text/javascript"></script>
<script type="text/javascript">
    Sys.debug = true;
    var popup;
    Sys.require(Sys.components.popup, function () {
        popup = Sys.create.popup("#popup", {
            parentElementID: "target",
            onShow: '{AnimationName: "Sequence", AnimationChildren: [{AnimationName:"HideAction", visible: true},{AnimationName:"FadeIn"}]}'
        });
    });  

此按钮打开内容,效果很好:

<input type="button" onclick="popup.show()" value="Search Stories" />

我的问题是两个服务器控件使该框在回发时消失。回发对于其中之一肯定是必要的。这对我来说很有意义,因为页面正在刷新并且尚未按下按钮。如何在特定情况下(导致回发发生的这两个操作之一)页面回发并显示弹出窗口?

4

1 回答 1

0

你可以试试这个:

http://msdn.microsoft.com/en-us/library/z9h4dk8y.aspx

ClientScriptManager cs = Page.ClientScript;

if (!cs.IsStartupScriptRegistered(this.GetType(), "ShowPopup"))
{
  String cstext1 = "alert('Hello World');";
  cs.RegisterStartupScript(this.GetType(), "ShowPopup", "popup.Show()", true);
}
于 2013-07-19T20:53:42.193 回答