2011-12-14 5 views
0

PopControl Extender를 통해 TextBox에 연결된 다중 선택 CheckBoxList가있는 패널을 만듭니다.Popextender는 커밋 후 패널을 닫습니다.

확장자 PopControl.commit() 방법을 사용하여 선택한 항목을 표시하고 있습니다.

CheckBoxist에서 항목을 선택하면 패널이 닫히고 패널을 닫지 않고 항목을 선택하려고합니다.

내가 뭘 잘못하고 있니? 이 AutoPostBack = "true"을 가지고 원인이 체크 박스 중 하나를 클릭하면

마크 업

<asp:TextBox ID="txtCountry" runat="server" Skinid="longTextbox" AutoPostBack = "false" OnClientItemSelected="passtohidden()" /> 
<asp:Panel ID="pnlLocation" runat="server"> 
    <asp:UpdatePanel runat="server" ID="upLocation"> 
     <ContentTemplate> 
      <asp:CheckBoxList ID="chkLocation" SkinID ="chkColor" runat="server" AutoPostBack = "true" onselectedindexchanged="chkLocation_SelectedIndexChanged" /> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="txtCountry" EventName="TextChanged" /> 
     </Triggers> 
    </asp:UpdatePanel> 
</asp:Panel> 
<asp:PopupControlExtender ID="Panel1_PopupControlExtender" runat="server" Enabled="True" Position="Bottom" PopupControlID = "pnlLocation" TargetControlID="txtCountry" /> 

코드 뒤에

protected void chkLocation_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    string strSelected = ""; 

    foreach (ListItem l in chkLocation.Items) 
    { 
     if (l.Selected) 
     { 
      strSelected += l.Text + " ,"; 
     } 
    } 

    //txtCountry.Text = strSelected; 

    Panel1_PopupControlExtender.Commit(strSelected); 
} 

답변

0

패널이 닫힙니다.

여러 개의 확인란을 선택하려면 AutoPostBack을 false로 설정 한 다음 모든 필수 확인란을 선택한 후 비동기 포스트 백을 수행 할 때 클릭 할 CheckBoxList 옆에 단추를 만듭니다. 이 기능을 사용하려면 버튼에 UseSubmitBehavior="false"을 설정해야합니다.

<asp:TextBox ID="txtCountry" runat="server" Skinid="longTextbox" AutoPostBack = "false" OnClientItemSelected="passtohidden()" /> 
<asp:Panel ID="pnlLocation" runat="server"> 
    <asp:UpdatePanel runat="server" ID="upLocation"> 
     <ContentTemplate> 
      <asp:CheckBoxList ID="chkLocation" SkinID ="chkColor" runat="server" AutoPostBack = "false" onselectedindexchanged="chkLocation_SelectedIndexChanged" /> 
      <asp:Button runat="server" ID="submitButton" Text="Ok" UseSubmitBehavior="false" /> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="txtCountry" EventName="TextChanged" /> 
     </Triggers> 
    </asp:UpdatePanel> 
</asp:Panel> 
<asp:PopupControlExtender ID="Panel1_PopupControlExtender" runat="server" Enabled="True" Position="Bottom" PopupControlID = "pnlLocation" TargetControlID="txtCountry" /> 
관련 문제