0

我有一个页面,如果 IsPostBack 为真,则调用一个获取屏幕大小的 javascript 函数,将宽度和高度传递给隐藏字段,然后单击一个按钮以导致 PostBack。所以我可以检索用户屏幕的大小,然后用默认数据加载页面,表格大小合适等。

总是,当页面(已回发一次)显示数据时,会填充一个网格视图。每行都有一个“删除”链接按钮。每个链接按钮都设置为 OnClientClick 以调用 javascript 函数来确认您要删除。

网格上方是一排文本框/按钮/下拉列表,可让您搜索或过滤显示的数据。Gridview 位于更新面板中。当页面首次加载其数据并显示项目列表时,删除链接按钮一切正常。每一行都没有问题。将显示 Confirm 框,如果选择 Okay,则会发生异步回发。

如果在显示初始数据后(已经在一次回发之后),您然后使用搜索框和按钮,或使用下拉列表过滤数据(搜索按钮和过滤器 DropDownList 是 UpdatePanel 的异步触发器)数据刷新好的(总是)但是,有时,GridView 每一行中的“删除”LinkBut​​ton 什么都不做。它甚至不会触发 ClientSide 功能。就好像它已经死了一样。

前段时间我在 ImageButtons 上遇到了类似的问题,并且收到的智慧似乎是“将它们更改为 LinkBut​​tons”。但是我有几十个带有“删除”链接按钮的网格可以正常工作,但是这个已经决定停止工作 - 有时。

我不得不说,自从迁移到 Framework 4.0 以来,我正在考虑放弃 UpdatePanels。在 Framework 2.0 中可靠运行多年的网站似乎只有问题

请问有什么想法吗?这与在第二次回发中加载控件的顺序有关吗?

编辑:这有一个转折点。当这种情况发生时,即单击删除链接甚至不会触发客户端事件 - 如果您单击 Gridview 之外的页面区域(即在 UpdatePanel 之外) - 然后再单击删除链接 - 它可以工作!

4

1 回答 1

1

关于 ImageButtons: IE10 存在一个错误:ASP.NET 无法检测 IE10 导致 _doPostBack is undefined JavaScript 错误或保持 FF5 滚动条位置(http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx)。只需升级到 .NET 4.5。

关于 LinkBut​​tons:你有“ID”属性吗?我记得我遇到过类似的问题,因为我的 linkBut​​ton 没有 ID。

你能发布一些代码吗?这会有所帮助。

于 2013-08-09T16:33:46.503 回答