1

我面临与此处提到的相同的问题。

在 GridView 中使用 ButtonField 并将 ButtonType 设置为“图像”时,单击它会生成 2 个 http 帖子。对于这些一次点击多次回传,回传的值第一次为“假”,第二次为“真”。如果按钮类型是链接或简单按钮,则行为正常。

<asp:ButtonField ButtonType="Image" Text="Delete" CommandName="Delete"
 CausesValidation="false" ImageUrl="../images/Delete.gif" ></asp:ButtonField>

Microsoft 表示这是一个已知问题,尚未修复,解决此问题的方法是使用模板字段,这在大多数情况下是一个很好的解决方案,但对于我的情况,我不能使用模板字段并且按钮必须是图像类型。有没有其他方法可以解决这个问题?

更新:IE6、7、8所有版本都有同样的问题。如果有一些解决方法,请发布。

Update2:'Request.HttpMethod' 的值始终为 'POST',即使两个回发具有不同的 IsPostback 值。检查这一点可能是一种可能的解决方法,但必须在每个页面上完成,在上述场景中,网格与 ButtonField 列一起使用。有什么比这个更好的想法吗?

4

1 回答 1

0

http://connect.microsoft.com/VisualStudio/feedback/details/104617/double-postback-using-buttonfield中所述

您可以将按钮字段更改为图像按钮

于 2012-05-21T10:09:38.223 回答