我是一个带有几个相关下拉列表的更新面板。单击“提交”按钮后,面板将刷新并重置下拉列表。用户参数丢失。有没有办法添加代码来阻止更新面板刷新我可以包含在我的按钮点击事件中?
更新小组:
<asp:ScriptManager ID="ScriptManager1" runat="server" >
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" ChildrenAsTriggers="True" UpdateMode="Conditional">
<ContentTemplate>
<li class="small_link"> ..........
<li class="small_link">
<div class="li_div">
<asp:Button ID="btnInventoryRpt" runat="server" Text="Load Report" OnClick="btnInventoryRpt_Click"
CausesValidation="false" UseSubmitBehavior="False" />
</div>
</li>
</ContentTemplate>
</asp:UpdatePanel>
按钮单击事件:
protected void btnInventoryRpt_Click(object sender, EventArgs e)
{
load_inventory_report();
}
答案 0 :(得分:0)
这听起来我在页面加载事件中绑定了您的下拉列表,但是您忘记了页面回发。
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//Bind your drowdown list here
}
}
但是可以使用更多的代码来确定。
答案 1 :(得分:0)
感谢您的帮助。我能够使用AsyncPostBackTrigger完成此任务。如果其他人遇到此问题,这是一个很好的解释。
http://msdn.microsoft.com/en-us/library/system.web.ui.asyncpostbacktrigger%28v=vs.110%29.aspx
答案 2 :(得分:0)
在您的asp.net页面中,从updatepanel标记中删除ChildreAsTrigger属性。你只需要UpdateMode =&#34;条件&#34;强制更新
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional" />
在按钮点击事件中,您可以强制进行更新
protected void btnInventoryRpt_Click(object sender, EventArgs e)
{
load_inventory_report();
UpdatePanel2.Update();
}