Как я могу сделать мой модальный Popup Extender модальным? (Отключить фон) - PullRequest
3 голосов
/ 13 октября 2009

В свое приложение asp.net я добавил простой модальный расширитель всплывающих окон ajax.

Появляется и работает правильно, однако, в отличие от примера на веб-сайте инструментария ajax, он не отключает / затемняет остальную часть страницы. Что мне нужно сделать, чтобы добиться этого эффекта?

 <asp:Button ID="btnSaveAndClose" runat="server" Text="Save" 
                onclick="btnSaveAndClose_Click"/>

                <cc1:ModalPopupExtender 
                BackgroundCssClass="modalBackground" 
                DropShadow="true" 
                OkControlID="btnOk" 
                CancelControlID="btnOk" 
                runat="server" 
                PopupControlID="pnlClientSaved" 
                id="ModalPopupExtender1" 
                TargetControlID="btnSaveAndClose"
                 /> 

<asp:Panel ID="pnlClientSaved" runat="server" CssClass="modalPopup" style="display:none;" Width="300px" Height="200px"> 
Client Saved!
<br /><br /> 
<asp:Button ID="btnOk" runat="server" Text="Ok" /> 
</asp:Panel> 

Ответы [ 3 ]

4 голосов
/ 13 октября 2009

Вы должны написать соответствующий стиль в классе css "modalBackground". Соответствующее свойство уже задано в вашем коде:

BackgroundCssClass="modalBackground" 

Вот список этого класса с примера страницы :

.modalBackground 
{
    background-color:Gray;
    opacity:0.7;
}
0 голосов
/ 17 октября 2016

Ответ не останавливает прокрутку в фоновом режиме, что IMO является истинным отключение фона .

Я сделал это, используя это ...

Оберните ваш ContentPlaceHolder в <DIV id="wrapper">

И используя Jquery ... в своем основном теле, используйте этот код со ссылочными CSS-классами в ваших объектах.

То есть CSSClass="popupOK" в вашем ярлыке или элементе управления внутри modalpopupextender и CSSClass="promoVisible" в ваших кнопках OK или CANCEL, которые должны удалять всплывающее окно.

$(document).ready(function () {
    //had to set position:fixed to work on iPad and other mobile    
    $('.popupOk').click( function(){
      $('#wrapper').css('overflow', 'auto');
      $('#wrapper').css('position', 'inherit');
      //  alert("ok clicked");
    });
    // if the popup is visible, fix the overflow so the
    // background doesn't scroll, only the popup window
    if($('.promoVisible').is(':visible')){
      $('#wrapper').css('overflow', 'hidden');
      $('#wrapper').css('position', 'fixed');
    } else{
      $('#wrapper').css('overflow', 'auto');
      $('#wrapper').css('position', 'inherit');
    }
)}
0 голосов
/ 07 декабря 2011
.modalBackground
{
    background-color:Gray ;
    filter:alpha(opacity=30);

} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...