2008-11-21 46 views
0

我在页面上使用了一个asp.net ModalPopupExtender,并且想要在用户在特定条件下按下ok按钮时隐藏对话框。但我似乎无法找到办法。单击确定或取消时防止隐藏ModalPopupExtender

我所寻找的是这样的事情

AJAX:ModalPopupExtender ... OnOkScript = “返回确认( '你确定吗?')” ......

如果确认是假的,那么模态对话框不会消失。

+0

看起来像我需要添加我自己的按钮,而不是连接OkControlID和CancelControlID – slolife 2008-11-21 00:28:26

回答

1

从我的理解你的具体情况你不会连接按钮,只是连接脚本来处理条件,然后你可以通过JS关闭它。

1

下面的JavaScript功能将让你实现这一点:在Page_Load事件的页面

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     btnOK.OnClientClick = string.Format("conditionalHide('{0}'); return false;", 
      panPopup_ModalPopupExtender.ClientID); 
    } 
} 

的一些注意事项的Button控件:

function conditionalHide(clientID) 
{ 
    if (confirm('You sure?')) 
    { 
     $find(clientID).hide(); 
    } 
} 

你可以这样使用你的ASP:

  • panPopup_ModalPopupExtender是您的ModalPopupExtender
  • return false;可防止用户单击按钮时发生回发
  • 您可以对ModalPopupExtender的ClientID进行硬编码,但会引入(额外的)维护头痛。显示的方法是我发现的最好的一个,以减轻这种开销
相关问题