【问题标题】:ModalPopupExtender hides when dropdown post back worksModalPopupExtender 在下拉回发工作时隐藏
【发布时间】:2015-08-06 11:30:18
【问题描述】:

我有一个模型弹出扩展器,在这个弹出窗口中我有一个带有 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>       

【问题讨论】:

  • 下拉更改是否需要回发?

标签: c# asp.net ajax


【解决方案1】:

如果您需要模态弹出扩展器来“生存”回发,那么您必须自己管理它。处理下拉列表的 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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    • 1970-01-01
    • 1970-01-01
    • 2017-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多