ModalPopUpExtender は「hiddenTargetControlForModalPopup」への参照を作成します。これは UI の隠しボタンであり、以下に示すコード以外では使用されていないようです。
モーダル ポップアップのターゲットは PANEL pnlNew ですが、TagetControlID が ID="hiddenTargetControlForModalPopup" に割り当てられるのはなぜですか? この配線を理解しようとしているだけです...ありがとう!
CancelControlID="btHiddenOK" は、モーダル ポップアップ コントロールのどこにも使用されていません (モーダル ポップには別のキャンセル ボタンがあります (更新パネルのコメント ..LOT OF CODE のすぐ下にある [保存] ボタンと [キャンセル] ボタンを参照してください)。 ....だから、属性 CancelControlID="btHiddenOK" を削除しようとしました - その結果、モーダル ポップアップが無効になりましたか? btHiddenOK がモーダル ポップアップでさえ使用されていない場合は、削除する必要はありません。効果がありますが、そうではないようですか?
<asp:Button runat="server" ID="hiddenTargetControlForModalPopup" style="display:none"/>
<asp:Panel ID="pnlNew"
runat="server"
DefaultButton="hiddenTargetControlForModalPopup"
style="width: 575px;">
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<div class="shadowAreaBig" >
<asp:UpdatePanel runat="server" ID="ModalPopupControls" UpdateMode="Conditional">
<ContentTemplate>
<div class="shadowContainer shadowContainerNew" >
<!-- LOT OF CODE -->
<div class="buttonsNew">
<span class="buttonSave">
<asp:ImageButton AlternateText="Create new user" ID="ImageButton1" runat="server" ImageUrl="~/css/images/buttonSave2.png" OnClick="btOK_Click" OnClientClick="javascript:return validateControls();" TabIndex="110" style='display: none;' />
<img style="border-width:0px;cursor: default;" alt="Create new user" src="../css/images/buttonSave2_disabled.png" tabindex="110" id="ImageButton1_Disabled" >
</span>
<span class="buttonCancel"/>
<asp:ImageButton AlternateText="Cancel" ID="ImageButton2" runat="server" CausesValidation="False" ImageUrl="~/css/images/buttonCancel.png" OnClientClick="cancel();return false;" TabIndex="111"/>
</span>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<p class="clearFloat"></p>
</asp:Panel>
</div>
<cc1:ModalPopupExtender
ID="CreateMPExtender"
runat="server"
TargetControlID="hiddenTargetControlForModalPopup"
PopupControlID="pnlNew"
BackgroundCssClass="modalBackground"
DropShadow="false"
BehaviorID="ModalPopupBehavior"
OkControlID="btHiddenOK"
OnOkScript="ok()"
OnCancelScript="hideModalPopup()"
RepositionMode="RepositionOnWindowResizeAndScroll"
PopupDragHandleControlID="pnlNewSRO"
CancelControlID="btHiddenOK"
/>
<asp:Button ID="btHiddenOK" runat="server" Style="visibility:none" />