別のモーダルポップアップエクステンダーの質問
-
05-07-2019 - |
質問
モーダルポップアップを機能させようとしていますが、コードビハインドでトリガーする必要があります。
<asp:Button ID="btnModalPopUp" runat="server" Text="Button" Style="display: none" />
<asp:Panel ID="pnlModalPopup" runat="server" CssClass="modalPopup" Style="display: none"
Width="233px">
<div id="Div1" runat="server" cssclass="title">
Modal text here.
<asp:TextBox ID="txtEditComments" runat="server"></asp:TextBox>
</div>
</asp:Panel>
<cc1:ModalPopupExtender ID="modalMessage" runat="server" TargetControlID="btnModalPopUp"
PopupControlID="pnlModalPopup" BackgroundCssClass="modalBackground" DropShadow="true"/>
コードビハインド:
protected void Page_Load(object sender, EventArgs e)
{
modalMessage.Show();
}
&quot; modalMessage.Show();&quot;にヒットしてもモーダルパネルを表示しないコード。
解決
2つのソリューション:
最初の解決策:
Style = quot; display:none&quot;
を pnlModalPopup
から削除します。
最初の解決策は、ポップアップを「フラッシュ」することです。ページが最初に読み込まれたときに画面に表示され、その後すぐに消えます。
2番目の解決策:
protected void Page_Load(object sender, EventArgs e)
{
pnlModalPopup.Style["display"] = "block";
modalMessage.Show();
}
推奨事項: モーダルポップアップがちらついて消えないように、2番目のソリューションを使用することをお勧めします。
編集:コードをテストしました:
提供したコードのみを含むシンプルなページでコードをテストしました... 期待どおりに動作しました。
次を確認します。
- モーダルポップアップは、条件付きで更新される
UpdatePanel
で定義されていますか? - モーダルポップアップが、可視性がfalseに設定されている
Panel
で定義されていないことを確認します。 - それでもうまくいかない場合は、モーダルポップアップが実際にレンダリングされたWebページのソースコードにあるかどうかを確認します。
他のヒント
必要に応じてChrisのコメントを聞いてください:
display:noneは表面的に必要ですが、 そうでない場合は、ポップアップが表示されます ページがロードされ、すぐに ModalPopupExtenderの間に消えます 蹴って隠します。
次のように表示する必要がありました:
pnlModalPopup.Visible = true;
modalMessage.Show();
所属していません StackOverflow