如果按下特定的服务器控件,则在回发时执行javascript

时间:2013-07-19 20:42:03

标签: c# javascript jquery asp.net

我真的不懂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" />

我的问题是两个服务器控件使邮箱在回发时消失。其中一个肯定是必要的回发。这对我来说很有意义,因为页面刷新并且没有按下按钮。如何在某种情况下(在导致回发的这两个动作中的一个)中使用弹出窗口的页面回发?

1 个答案:

答案 0 :(得分: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);
}