当下拉回发工作时,ModalPopupExtender会隐藏

时间:2015-08-06 11:30:19

标签: c# asp.net ajax

我有一个模型弹出扩展器,在这个弹出窗口中我有一个下拉列表,其中包含AutopostBack =" True"。现在,当我选择一个下拉值时,ModalPopupExtender会隐藏。让我知道原因???有人更喜欢放置更新面板,但问题仍然存在

我的弹出控件是,

  <cc1:ToolkitScriptManager runat="server" ID="ToolkitScriptManager1" EnableScriptGlobalization="true"></cc1:ToolkitScriptManager>            
  <asp:HiddenField ID="HiddenField1" runat="server" />
  <cc1:ModalPopupExtender ID="ModalPopupExtender3" runat="server" 
  BehaviorID="modalPopupExtender3" 
  TargetControlID="HiddenField1"
  OkControlID="cancel1" 
  BackgroundCssClass="modalPopup" >
  </cc1:ModalPopupExtender> 

 <!-- Update section-->

  <div id="updatdediv1" visible="false" >
  <div class="portlet box blue" id="Div3">
  <div class="portlet-title">
  <div class="caption"><i class="icon-reorder"></i> Add Salary Component </div>
   <div class="tools">
<asp:imagebutton ID="Imagebutton2" runat="server"  class="close" ImageUrl="~/jimage/clossse.PNG" />
</div>
</div>
<div class="portlet-bodypop">
<div class="controls">
<label class="control-label">Pay Grade:</label>
<asp:DropDownList ID="ddpaygrade" runat="server" AutoPostBack="true" class="m-wrap large" AppendDataBoundItems="false" ></asp:DropDownList>
 </div>
 <div class="controls">
 <label class="control-label">DA %:</label>
 <asp:TextBox ID="txtda" runat="server" class="m-wrap large" ReadOnly="true"></asp:TextBox>
 </div>
 <div class="controls">
                                <label class="control-label">Basic:</label>
                             <asp:TextBox ID="txtbasic" runat="server" class="m-wrap large"></asp:TextBox>
    </div>
    <div class="controls">
    <label class="control-label">Calculated DA:</label>
    <asp:TextBox ID="txtcalculatedDA" class="m-wrap large" runat="server" ></asp:TextBox>
    </div>
    <div class="form-actions1">
    <button id="Button2"onclick="myFunction()"" style="display:none" >Save</button>
   <asp:Button ID="btnedit2" runat="server" Text="Submit"  CssClass="btn blue"  ValidationGroup="grp1"   />     
                            &nbsp;&nbsp;
  <asp:Button ID="btncancel3" runat="server" Text="Cancel" CssClass="btn"/>
                            <asp:Label ID="label1" runat="server" Text="" Visible="false"></asp:Label>
 </div>
 </div>
 </div>
 </div>
  <!-- temp panel-->                                        
  <asp:Panel ID="kj" runat="server"  >
  <table  >
  <tr><td class="style9">
  <table >
  <tr> <td class="style8"> &nbsp;</td>     </tr>
  <tr >
  <td align="left" class="style12">
   <asp:Button ID="cancel1" runat="server"  Text="Cancel" Style=" display:none" 

   </td>
   </tr>
   </table>
   </td></tr></table> 
   </asp:Panel>       

1 个答案:

答案 0 :(得分:3)

如果你需要模态弹出扩展器来“幸存”回发,那么你必须自己管理它。处理下拉列表的SelectedIndexChanged事件并在那里显示弹出窗口:

protected void ddpaygrade_SelectedIndexChanged(object sender, EventArgs e)
{
    ModalPopupExtender3.Show();
}

不要忘记在标记中连接事件:

<asp:DropDownList ID="ddpaygrade" runat="server" AutoPostBack="true" 
    class="m-wrap large" AppendDataBoundItems="false" 
    OnSelectedIndexChanged="ddpaygrade_SelectedIndexChanged" >    
</asp:DropDownList>