我们在 gridview 中处理以下两种情况:
1) 在“onRowCreated”事件中附加 onclick 处理程序,以便在单击网格的行时触发 selectIndexChanged 事件。代码为每一行运行。
e.Row.Attributes.Add("onClick", Page.ClientScript.GetPostBackEventReference(this, "Select$" + e.Row.RowIndex.ToString()));
2)还将网格第一个单元格中图像按钮的命令名称设置为“删除”,以便在单击图像按钮时触发网格删除事件。
<ItemTemplate>
<ImageButton ID="imbDelete" CommandName="Delete" runat="server" SkinID="DeleteButton" ToolTip="Delete" CausesValidation="false" />
</ItemTemplate>
在升级到 .net 4.5 之前,所有这些场景都运行良好(也更新了 ajax 控制工具包),但是现在这两个操作发生冲突,当我单击删除按钮时删除操作挂起。单击删除按钮后,选择作为同一行的一部分被触发(开始请求/结束请求被调用为选择),然后(开始请求删除操作被调用,结束请求永远不会发生)。因此,操作挂起。
- 仅当解决方案部署在 IIS 上时才会发生这种情况。在 ASP.NET 开发服务器上运行良好。
- 仅适用于 IE,所有版本。在其他浏览器中它工作正常。
- 当我单击行时,事件 selectedIndexChanged 会被调用。但是,当单击位于 row 单元格中的删除按钮时,操作会挂起并且不会调用任何事件。
由于这个问题,我一直在发疯,感谢您的帮助。更新:仍然卡住了,有什么想法吗?
高拉夫·塔雷