【问题标题】:asp:ImageButton in Gridview OnClick event not workingGridview OnClick 事件中的 asp:ImageButton 不起作用
【发布时间】:2012-01-02 02:58:52
【问题描述】:

我花了很长时间搜索这个问题,网上还有一些其他类似的帖子,但没有一个可以帮助我解决这个问题。

我有一个 GridView,里面有一个 ImageButton,imagebutton 有一个 OnClick 函数,但是当它被点击时永远不会到达那个事件,下面是我的 gridview:

<asp:GridView ID="gridBuildings" runat="server" AutoGenerateColumns="False"
              GridLines="none" ShowFooter="false" ShowHeader="false" 
              Width="100%">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:ImageButton runat="server" ID="cmdBuy"
                     ImageUrl="~/images/button.jpg" 
                     OnClick="ImageButton_Click"/>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

这是代码隐藏(我已经删除了额外的内容,单击 ImageButton 时永远不会点击 response.redirect)

Protected Sub ImageButton_click(ByVal sender As Object, ByVal e As ImageClickEventArgs)
    response.redirect("test.aspx")
    Dim row As GridViewRow = Me.gridBuildings.SelectedRow
    (etc ... )
End Sub

母版页中有一个表单 runat="server" 标记,还有一个 asp:UpdatePanel 和一个 asp:AjaxScriptManager 我感觉问题可能与回发有关,但无法正常工作它出来 - 任何帮助将不胜感激。

谢谢!

【问题讨论】:

  • gridview 在更新面板中?您是否尝试禁用更新面板以查看是否有问题?
  • 是的 - 我在写完这篇文章后不久就摆脱了更新面板,不知道为什么我把它放在一个里面。不过谢谢

标签: asp.net vb.net gridview onclick imagebutton


【解决方案1】:

确保您没有在每次页面加载时都重新绑定网格。如果您重新绑定,该事件将永远不会触发。将绑定语句包装在 if not ispostback 块中。

【讨论】:

  • 谢谢 - 我知道它一定很简单,现在完美运行:)
猜你喜欢
  • 2010-10-21
  • 1970-01-01
  • 2014-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多