【问题标题】:Multiple dynamic LinkButton avoid postback多个动态 LinkBut​​ton 避免回发
【发布时间】:2016-05-05 09:43:25
【问题描述】:

我有很多LinkButton,但我希望它对所有LinkButton 都有一个OnClick 事件,因为它会做同样的事情(我只会得到CommandArgument 的值)。我的问题是 LinkBut​​ton 一直在做回发,每次我点击 LinkBut​​ton 时都会刷新页面。

我尝试了许多解决方案,例如添加href="#",在asp.net 中的LinkBut​​ton 控件上使用OnClientClick="" 属性,但结果是它不再触发ClickEvent。

还有其他方法可以实现吗?或者javascript是我解决这个问题的唯一方法?

<asp:ScriptManager runat="server"></asp:ScriptManager>
 <asp:UpdatePanel ID="panelLinkButton" runat="server" UpdateMode="Conditional">
   <triggers>
       <asp:AsyncPostBackTrigger ControlID="LinkButton6" EventName="Click" />
   </triggers>
 <contenttemplate>
       <asp:LinkButton ID="LinkButton6" runat="server" CssClass="btn btn-info" OnClick="lnkAddToGroup_Click"><i class="fa fa-search"></i></asp:LinkButton>
 </contenttemplate>
</asp:UpdatePanel>

【问题讨论】:

  • 你需要LinkBut​​ton吗?或者你可以简单地使用 标签?
  • 是的链接按钮是必需的
  • LinkBut​​tons 是在中继器还是 GridView 中?
  • 我不明白你在中继器中的意思,我正处于设计阶段,我还没有进行编码,因为这很容易,但链接按钮将在一个表格内并将通过使用 StringBuilder 后面的代码添加。不要生气
  • 您正处于设计阶段,但您谈论的是 LinkBut​​ton(而不是超链接):所以我谈论的是中继器。这是一个 .net 控件,可以帮助您构建,例如一个表(如您所说)避免连接字符串。我不明白如何使用 StringBuilder 添加 LinkBut​​ton。也许您正在创建源代码文件?

标签: c# asp.net


【解决方案1】:

尝试使用 UpdatePanel,例如:

<asp:UpdatePanel ID="u1" runat="server" UpdateMode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="lnt" EventName="Click" />
    </Triggers>
    <ContentTemplate>
         <asp:LinkButton ID="lnt" runat="server" onclick="LinkTest_Clkk">LinkButton</asp:LinkButton>
    </ContentTemplate>
</asp:UpdatePanel>

【讨论】:

  • 在我的代码后面?我还会使用 LinkTest_Click 事件吗?因为我也使用更新面板阅读但我不知道如何正确使用它
  • 是的,在后面的代码中,是的,您仍然可以使用 Click 事件和该更新面板的角色,它不会进行完整的回发
  • 嗯它不会触发我的点击事件?。顺便说一句,您需要为此添加
  • @JCBorlagdan 它应该,你能把你的代码粘贴到问题中
  • 当我点击它时,它不会立即更新内容,但是当我刷新页面时,那是它唯一更新的时间
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多