Ajax ToolKit — ModelPopupExtender報錯:Sys.InvalidOperationException: Handler was not added throu

來源:互聯網
上載者:User

Sys.InvalidOperationException: Handler was not added through the Sys.UI.DomEvent.addHandler method...

問題原因:

如果將ModalPopupExtender的OK/Cancel 按鈕,放在了彈出框的UpdatePanel內,就會報這個錯

解決辦法:

既然ModalPopupExtender不讓人在UpdatePanel內放Ok/Cancel的控制按鈕,那就乾脆不放了,用Show()和Hide()來控制~

即,

view plaincopy to clipboardprint?

  1. <cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" PopupControlID="pTool" CancelControlID="btnHide" BackgroundCssClass="modalBackground" TargetControlID="HiddenField3">

<cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" PopupControlID="pTool" CancelControlID="btnHide" BackgroundCssClass="modalBackground" TargetControlID="HiddenField3">

 

最近用ModelPopupExtender時,總是提示我有 Sys.InvalidOperationException 未通過 Sys.UI.DomEvent.addHandler 的錯誤,後來發現是我設定了CancellControlID,而沒有設定相應的事件,我是通過在伺服器端Show和Hide來控制的,這樣指令碼在尋找CancellControlID的時候就找不到了,就為null,在指令碼中就會拋出以上錯誤。所以,如果我們要在伺服器端控制ModelPopupExtender,不要設定ControlId就可以了!

 

ModalPopupExtender的使用

2010-01-08 10:33:17| 分類:asp.net| 標籤:|字型大小大中小 訂閱

常用屬性:
TargetControlID:用於觸發彈出面板的控制項。
OkControlID:彈出面板中的確認按鈕,用於確認新的樣式。
OnOkScript:當單擊確認按鈕後,關閉樣式面板後,執行指令碼。
CancelControlID:樣式面板中的取消按鈕,用於取消應用樣式。
PopupDragHandleControlID:樣式面板中用於觸發面板的控制項。
DropShadow:樣式面板是否有陰影。值為True,則有陰影;值為False,則沒有陰影。
BackgroundCssClass:樣式面板中應用的css樣式。

1、實現半透明陰影遮罩
定義一個CSS類,並指派到BackgroundCssClass屬性上

<style type="text/css">

.bg

{

position: absolute;

z-index: 100;

top: 0px;

left: 0px;

background-color: #000;

filter: alpha(opacity=60);

-moz-opacity: 0.6;

opacity: 0.6;

}

</style>
2、JavaScript 控制顯示
$find('Panel1').hide()
$find('Panel1').show()
前提是,PopupControlID和BehaviorID都要是Panel1
3、後台控制顯示
要彈出的panel

<asp:Panel ID="plInfo" runat="server" BorderStyle="None" Style="display: none">
<asp:UpdatePanel ID="upnYueJian" runat="server" RenderMode="Inline">
<ContentTemplate>
<!--注意這個Button,ModalPopupExtender必須有一個宿主控制項-->
<asp:Button ID="btnShowPopup" runat="server" Style="display: none" />
<cc1:ModalPopupExtender ID="popCtr" CancelControlID="qxYJ" TargetControlID="btnShowPopup"
DropShadow="false" BackgroundCssClass="modal" PopupControlID="plInfo" runat="server">
</cc1:ModalPopupExtender>
<div style="width: 220px; padding: 10px 0px 10px 10px; border: 1px #79144a solid;
line-height: 20px; font-size: 13px; letter-spacing: 1px; margin: 20px 20px; background-color: #fff;
text-align: left; background-image: url(img/hua_bg.gif); background-repeat: no-repeat;">
<asp:Literal ID="ltrDTCode" runat="server"></asp:Literal>
<p style="font-weight: bold; padding-top: 10px;">
<span>
<asp:LinkButton Text="我堅持約見" CssClass="LeeA" ID="lbtnJCYJ" CommandName="jcyj" runat="server"
OnClick="lbtnJCYJClicklee" CommandArgument='<%# Eval("id")%>'>
</asp:LinkButton>
</span><span style="padding-left: 40px;">
<asp:LinkButton Text="取消約見" runat="server" CssClass="LeeA" ID="qxYJ"></asp:LinkButton>
</span>
</p>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
後台:
popCtr.Show();//顯示
popCtr.Hide();//隱藏

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.