0

その中にasp.netグリッドビューがあるdivのスタイルを設定しようとしています。私はJavaScriptコードを使用しています。div は、asp.net ボタンクリック イベントのポップアップです。

私は以下のコードを持っています:

function ViewPopup() {

    document.getElementById('PopupDiv').style.visibility = 'visible';
    document.getElementById('PopupDiv').style.display = '';

    var screenHeight = document.documentElement.clientHeight;
    var elementHeight = document.getElementById('PopupDiv').clientHeight;
    if (screenHeight > elementHeight) {
        document.getElementById('PopupDiv').style.top = ((screenHeight - elementHeight) / 2) + 50 +'px';
    }
    else {
        document.getElementById('PopupDiv').style.top = '10px';
        document.getElementById('PopupDiv').style.bottom = '20px';
        document.getElementById('PopupDiv').style.overflow = 'scroll';
    }

    var scrWidth = document.documentElement.clientWidth;
    var elWidth = document.getElementById('PopupDiv').clientWidth;
    document.getElementById('PopupDiv').style.left = ((scrWidth - elWidth) / 2) - 20 + 'px';

    document.getElementById('MaskedDiv').style.display = '';
    document.getElementById('MaskedDiv').style.visibility = 'visible';
} 

問題は、.. screenheight < elementheight の場合、コントロールが else ステートメントに移動し、ポップアップがスクロールバーで表示されることです。ポップアップのサイズが x と y だとします。

次にボタン クリックが発生したときに、screenheight > elementheight の場合、コントロールは if ステートメントに移動しますが、ポップアップの寸法は再び x と y になります。つまり、サイズは以前のボタン クリック イベントから引き継がれます。ポップアップがグリッドビューに完全に適合することを確認する方法はありますか?

4

1 に答える 1