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

标签 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" />

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

最佳答案

你可以试试这个:

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);
}

关于c# - 如果按下特定的服务器控件,则在回发时执行 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17755136/

相关文章:

c# - ASP.NET MVC - 简单的 If Else

javascript - 我怎样才能让我的幻灯片指示器改变我当前代码的样式?

javascript - 在 JSON 内部创建链接并通过 AngularJS 将其注入(inject)到 dom 中

javascript - 窗口大小调整功能

javascript - 使用自定义 header 的跨域 jquery ajax api 调用未命中服务器

javascript - 如何使用 link_to :remote => true 跟踪 ajax 调用

c# - 实现包含抽象/接口(interface)类型参数的抽象/接口(interface)方法

c# - Linq to entities 支持哪些语句?

c# - 谁应该负责关闭流

javascript - 我需要将空参数传递给 JavaScript 函数吗?