web-dev-qa-db-fra.com

Comment ouvrir une page aspx en tant que popup modal

Comment ouvrir une page aspx en tant que popup modal.

  1. Test.aspx devrait s'ouvrir comme un popup modal.
  2. Laissez Test1.aspx a un bouton. Lorsque vous cliquez dessus, la page Test.aspx doit être renseignée en tant que fenêtre contextuelle modale.

    Voici mon bouton: 

    <asp:Button ID="Button1" runat="server" Text="Fill Form in Popup" />
    

REMARQUE: Test.aspx: page aspx normale mais Test1.aspx: page parent Contient la page maître.

5
Sumanta

Si vous souhaitez ouvrir cette boîte de dialogue en tant que modèle jQuery, voir this post

Sinon, si vous souhaitez ouvrir cette page dans une boîte de dialogue modale, vous pouvez utiliser le code suivant pour l'ouvrir. Ces exemples utilisent window.showModalDialog de javascript. Pour trouver les détails d'utilisation, vous pouvez vous référer ici .

      <script>
        function fnRandom(iModifier) {
          return parseInt(Math.random() * iModifier);
        }

        function fnSetValues() {
          var oForm = document.getElementById('oForm');
          var iHeight = oForm.oHeight.options[oForm.oHeight.selectedIndex].text;

          if (iHeight.indexOf("Random") > -1) {
            iHeight = fnRandom(document.body.clientHeight);
          }

          var sFeatures = "dialogHeight: " + iHeight + "px;";
          return sFeatures;
        }

        function fnOpen() {
          var sFeatures = fnSetValues();
          window.showModalDialog("test.aspx", "", sFeatures)
        }
      </script>
1
Arafat

Vous pouvez soit utiliser l'extendeur de popup modal comme ci-dessous.

<cc1:ModalPopupExtender ID="mp1" runat="server" PopupControlID="Panl1" TargetControlID="Button1"
CancelControlID="Button2" BackgroundCssClass="Background">
</cc1:ModalPopupExtender>

Référence: http://www.c-sharpcorner.com/UploadFile/cd7c2e/open-a-new-web-form-in-the-model-popup-of-Asp-Net-applicatio/

Ou vous pouvez utiliser jQuery pour ouvrir un dialogue modal avec asp.net quelque chose comme.

$(document).on("click", "#LoadDialogButton", function () {

var url = "DialogContentPage.aspx";
var divId = " #MainContentDiv";

var q1 = "?inp1=" + $("#Input1").val();
var q2 = "&inp2=" + $("#Input2").val();

url = url + q1 + q2 + divId; //url in the form 'DialogContentPage.aspx?inp1=xx&inp2=yy #MainContentDiv'

$('<div id=DialogDiv>').dialog("destroy");

$('<div id=DialogDiv>').dialog({
    dialogClass: 'DynamicDialogStyle',
    modal: true,
    open: function () {
        $(this).load(url);           
    },
    close: function (e) {
        $(this).empty();
        $(this).dialog('destroy');
    },
    height: 350,
    width: 540,
    title: 'Dynamic Dialog'

});

});

Référence: http://www.codeproject.com/Articles/488312/jQuery-Modal-Dialog-with-Dynamic-Content

0
Jalpesh Vadgama

Essayez ce simple javascript pour ouvrir la page aspx dans une nouvelle fenêtre/popup 

window.open("http://www.google.com/");
window.open("~/mypage.aspx");

ou 

ScriptManager.RegisterStartupScript(Page, typeof(Page), "OpenWindow", "window.open('YourPage.aspx?Param=" + ParamX.ToString() + "');",true);

Ou si vous avez un bouton, vous pouvez l’utiliser comme ci-dessous:

Button1.OnClientClick="javascript:window.open('YourPage.aspx?Param=" + ParamX.ToString() + "');";

espérons que cela vous aidera à utiliser autrement Ajax modal popup.

0
Sunil Devre

Utilisez ClientScript.RegisterStartupScript, essayez ceci 

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)

        Dim query As String = "test.aspx" 
        Dim newWin As String = "window.open('" & query & "');"
        ClientScript.RegisterStartupScript(Me.GetType(), "pop", newWin, True)

End Sub
0
Vikas Rana