1

次のコードを使用して、最初のページ読み込み時にモデル ポップアップを表示しました。

<script type="text/javascript">
 function pageload() {
     var chkPostBack = '<%= Page.IsPostBack ? "true" : "false" %>';

     if (chkPostBack == 'false') {

         var popup = $find('ModalPopupExtender1');
         if (popup != null) {
             popup.show();
         }

     }

 }    

次のエラーが発生しました。助けてください。

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).
4

2 に答える 2

1

ModalPopupfrom codebehindを表示することをお勧めしif(!Page.IsPostBack)ます。Showしたがって、 の方法を使用できますModalPopupExtender

if(!Page.IsPostBack)
{
    ModalPopupExtender1.Show();
}

サーバー側から開くことができるようにするにTargetControlIDは、 のModalPopupExtenderを非表示のボタンに設定する必要があります。

<asp:Button ID="Hid_ShowDialog" Style="display: none" runat="server" />
于 2012-09-17T09:48:00.273 に答える
0

このコードを .net コードから実行してから isPostBack チェックを実行することをお勧めします。または、セッション全体で 1 回だけ実行したい場合でも、.net コードから JS を実行したら、Session("ShowPopup を設定します。 ") を false にしてから、それをチェックします。

ただし、この問題については、コード ブロックを最初から変更してみてください。

<%# instead of <%=
于 2012-09-17T09:39:53.643 に答える