【问题标题】:How to avoid post-back of Check Box inside repeater如何避免在中继器内回发复选框
【发布时间】:2014-01-30 10:26:45
【问题描述】:

我是 asp.net 的新手, 我有一个包含复选框的转发器,每当我选中复选框时,我都会在 checkchanged 上触发一个事件,但页面回发。 我的页面中的全部内容都有一个更新面板,但仍然会发生回发。无论如何要避免回发。 (Ps:为了避免Postback,我的意思是避免出现的闪烁)

谢谢

   <asp:Repeater ID="rptrDepartment" runat="server" OnItemCommand="rptrDepartment_ItemCommand"
                            OnItemDataBound="rptrdepartment_databound">
                            <ItemTemplate>
                                <tr>
                                   <td>
                                      <asp:CheckBox ID ="chkRow" runat="server" OnCheckedChanged="ChkRow_ChkChanged" AutoPostback="true" />
                                  </td>
                                </tr>
                             </ItemTemplate>
                 </asp:Repeater>

在我的 .cs 页面中,

   protected void ChkRow_ChkChanged(object sender, EventArgs e)
{
   //some method
}

【问题讨论】:

  • 更新面板和更新模式的触发器是什么?请添加您的代码
  • 更新模式设置为默认,我没有触发它。

标签: c# asp.net repeater


【解决方案1】:

只需将中继器保留在更新面板内而不是整个页面,如果您想要其他一些控件也需要部分回发,那么您可以使用多个更新面板。

【讨论】:

  • 试过了,将中继器保留在更新面板中,但仍然会发生回发。
  • 我都使用了,将整个页面保留在更新面板中,只保留转发器。两者都有效,我无法在我的电脑上生成您的问题
  • 我应该在哪个面板中更改更新模式?
  • 是的,我使用了多个更新面板,我在回发的转发器中有其他控件,这就是我有一个从上到下的更新面板的原因。
  • 只使用一个,从上到下并更改更新模式。你不能在其他里面嵌套更新面板,明白了吗?
猜你喜欢
  • 1970-01-01
  • 2013-10-03
  • 2017-12-03
  • 1970-01-01
  • 2019-02-04
  • 1970-01-01
  • 1970-01-01
  • 2011-08-30
  • 1970-01-01
相关资源
最近更新 更多