【问题标题】:Button in gridview网格视图中的按钮
【发布时间】:2009-12-28 13:18:09
【问题描述】:

我在 gridview 的模板字段中使用了一个按钮。单击按钮时,我想重定向到另一个页面,但它会引发异常:

回发或回调参数无效。使用配置或页面中的 启用事件验证。出于安全目的,此功能验证回发或回调事件的参数是否源自最初呈现它们的服务器控件。如果数据有效且符合预期,请使用 ClientScriptManager.RegisterForEventValidation 方法注册回发或回调数据以进行验证。

我可以做些什么来解决这个问题?

【问题讨论】:

    标签: asp.net gridview


    【解决方案1】:

    您可以在 RowCreated 中,如上一个答案的帖子中一样,注册每个按钮以进行事件验证。另外,如果你定义了一个commandname和commandargument,然后使用Grid的RowCommand事件而不是按钮单击事件来重定向,我不知道你是否有这个问题。您不需要模板列;我认为 GridButtonColumn 也适用于此...

    最后,您可以使用 Javascript 来缓解这种情况,通过设置 window.location = 'newurl'; 来重定向。您可以渲染出一个 URL,该 URL 受模板内的服务器端影响。

    【讨论】:

      【解决方案2】:

      问题是ASP.NET 不知道这个gridview 按钮。您有一个选项(如下所列):

      • 禁用事件验证(坏主意, 因为你失去了一点安全感 成本很低。)

      或者看看这个:http://odetocode.com/blogs/scott/archive/2006/03/21/asp-net-event-validation-and-invalid-callback-or-postback-argument-again.aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-26
        • 2014-09-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多