2013-07-29 10 views
6

Mam okno dialogowe jquery. Wyświetlam gridview asp.net w oknie dialogowym. Chcę zmienić rozmiar okna dialogowego na podstawie rozmiaru widoku siatki.Dynamiczne zmienianie rozmiaru okna JQuery

Istnieje przycisk, który pokazuje okno dialogowe po kliknięciu.

Chcę ustawić rozmiar okna tak, aby gridview idealnie do niego pasował.

I have my javascript code below : 



$("#ViewModalPopup").dialog({ 
       height: 800px, 
       scrollable: true, 
       width: 800, 
       modal: true 

      }); 

Tutaj #ViewModalPopup to element div, który otacza modalne okno podręczne.

Próbowałem wykonawczych następującą logikę, aby wyregulować wysokość okna w oparciu o wielkości Gr:

var maxHeight = 600; 
      var currentHeight = $('#ViewModalPopup').height(); 

if (currentHeight < maxHeight) { 
       var desiredHeight = currentHeight 
       } 
      else 
      { 
       var desiredHeight = maxHeight; 
       } 

    $("#ViewModalPopup").dialog({ 
        height: desiredheight, 
        scrollable: true, 
        width: 800, 
        modal: true 

       }); 

Ale to nie działa jak

var currentHeight = $('#ViewModalPopup').height(); 

zbliża się null z drugiego przycisku kliknij.

Czy istnieje sposób dynamicznego zmieniania rozmiaru okna dialogowego?

+0

Co się dzieje, gdy nie ustawisz wysokość w ogóle? –

+0

Witaj Jason P! Czasami widok siatki ma tak wiele wierszy, że rozciąga się od góry do dołu ekranu. Ustawienie wysokości i umieszczenie paska przewijania pomaga w ograniczeniu wysokości okna dialogowego. – CodeNinja

+0

Więc zasadniczo potrzebujesz maksymalnej wysokości. Czy próbowałeś ustawić 'max-height' w oknie dialogowym div używając css? –

Odpowiedz

7

Set jak

$("#ViewModalPopupDiv1").dialog("option", "maxHeight", 600); 

API

+0

Hej Dzięki! $ ("# ViewModalPopupDiv1"). Dialog ("opcja", "maxHeight", 600); było właściwie tym, czego szukałem. Dzięki za wskazanie mi właściwego kierunku. – CodeNinja

+1

*** maxheight *** a nie *** wysokość ***? – Kiquenet

Powiązane problemy