【发布时间】:2010-10-07 05:13:03
【问题描述】:
我有当前的问题,让我们解释一下之前的上下文:
我有一个包含表单的模态弹出扩展器。有一个功能“保存并添加新”,当用户单击此按钮时,表单中的数据在回发期间保存在数据库中并重新加载页面。
我希望此 Modal 弹出窗口再次出现在 page_load 上,允许用户输入新数据而无需再次单击显示此 Modal Popup 的按钮。
我试着先这样称呼它:
ClientScript.RegisterStartupScript(Page.GetType(), "ModalPopup", "ShowModalPopup(""" & Me.formModalButton.ID & """);", True)
但问题是当调用该函数时,我的模态弹出窗口在页面上尚不存在。因此,代码在
上崩溃了var modal = $find('myModal');
所以,我发现了另一种方式,它几乎完美地工作。
ClientScript.RegisterStartupScript(Page.GetType(), "ModalPopup", "Sys.Application.add_load(function() {ShowModalPopup(""" & Me.formModalButton.ID & """)};", True)
模态显示在我想要的页面加载中,但问题是如果我单击页面上的任何其他按钮,模态弹出窗口也会再次出现。
示例:我有另一个用于删除数据的 Modal Popup,当我点击按钮时,两个 Modal 都出现了,这并不酷。
有没有人知道如何解决这个问题或更好的方法?
附:我没有调用 Modal 弹出服务器端,因为页面中存在 javascript 函数,所以我不想在 RegisterStartupScript 中创建此函数的副本。
感谢您的宝贵时间。
【问题讨论】:
标签: asp.net javascript ajax asp.net-ajax ajaxcontroltoolkit