2

DIV 内に CheckboxList があります。ボタンをクリックすると、DIV がモーダル ポップアップとして表示されます。次に、ユーザーはチェックボックス リスト内の任意の数の項目をチェックして、[OK] をクリックします。これにより、divが非表示になります。

ユーザーがメイン フォームの [保存] ボタンをクリックすると、チェックボックス リストのどの項目がクリックされたかに基づいてパラメーターをストアド プロシージャに渡す必要がありますが、保存コードを実行すると、パラメーターは常にオフに設定されます。これを適切に行う方法についていくつか考えてみたいと思います。

ありがとう

JQuery:

 $(document).ready(function () {
        $('#<%=txtLANG.ClientID %>').click(function () {
            $("#overlay-back").dialog({
                resizable: false,
                modal: true,
                width: 500,
                height: 400,
                buttons: {
                    OK: function () {
                        GetLanguages();
                        $(this).dialog("close");
                    },
                    Cancel: function () {
                        $(this).dialog("close");
                    }
                }
            });
        });
    });

CodeBehind でメソッドを保存する

  private void Save()
  {
        List<string> lstItemsChecked = new List<string>();

        for (int i = 0; i < chkTopLanguages.Items.Count; i++)
        {
            if(chkTopLanguages.Items[i].Selected)
                lstItemsChecked.Add(chkTopLanguages.Items[i].Value);
        }
        //stored proc call
  }

  protected void btnSubmit_Click(object sender, EventArgs e)
  {
         Save();
  }

DIV ポップアップと CheckBoxList の ASPX コード

 <div id="overlay-back" style="display:none;">
  <td rowspan="3" valign="top">
     <asp:CheckBoxList ID="chkTopLanguages" TextAlign="Right" runat="server" />
           <br />
     <asp:TextBox runat="server" ID="txtOtherLanguages" Text="Other Languages..."></asp:TextBox>
  </td>
 </div>
4

2 に答える 2

0

AutoPostBack を false に設定してみてください。

<asp:CheckBoxList ID="chkTopLanguages" TextAlign="Right" runat="server" AutoPostBack="false" /> 

CheckBoxList コントロールの場合。

于 2013-03-27T19:46:59.640 に答える
0

これは、ポップアップを閉じると、ポップアップのコントロールにアクセスできないために発生する可能性があります。正確な原因はわかりませんが、javascript で配列変数を作成できます。チェックボックスをオンまたはオフにするたびに。JavaScript を使用して、その変数をすべての変数が設定されているかどうかに変更します。

私はずっと前にモーダルポップアップを使用していましたが、そのような問題だけがありました。このアプローチは最適ではないかもしれませんが、確実に機能します。

于 2013-03-27T19:56:00.673 に答える