0

我在 UpdatePanel 中实现了一个 GridView,它的触发器是 GridViews SelectedIndexChanged 事件。正如预期的那样,它的工作速度非常慢。相反,我想在客户端处理这个问题,但找不到关于 GridView 支持哪些客户端事件的足够信息。任何人都可以指出可能提供此信息的任何参考资料吗?

编辑:即使有人不知道任何客户端事件,我也会感兴趣。

4

2 回答 2

3

标准 ASP.NET GridView 有哪些客户端事件?

我很高兴被另一个回应证明是错误的,但是......没有?它是一个没有客户端 JavaScript 对象表示的服务器端对象。这是大多数标准 ASP.NET WebForms 控件的典型特征。

在 WebForm 上放置一个 GridView 并在<asp:CommandField ShowSelectButton="true" />客户端添加一个列,如下所示:<td><a href="javascript:__doPostBack(&#39;GridView1&#39;,&#39;Select$0&#39;)">Select</a></td>

您可以处理的任何对象上都没有客户端事件,它只是一个带有调用回发的 javascript 片段的锚点。如果你想要更花哨的东西,你将不得不自己烤一些东西,比如 - http://weblogs.asp.net/andrewrea/archive/2008/08/04/gridview-row-click-selection-通过客户端代码.aspx

一种方法是移动到另一个 ASP.NET WebForms“网格”控件。例如,我知道 DevExpress 网格有一个丰富的客户端对象模型。我几乎可以肯定 Telerik 也有类似的,而且可能还有其他一些。

于 2012-05-22T21:53:24.177 回答
0

这是一些我使用它为 GridView 中的内置按钮创建客户端事件的代码。

protected void Page_LoadComplete(object sender, EventArgs e)
{
        MyCommon.GridButtonClientClick(gvLookup, "gclick()");
}

public static void GridButtonClientClick(GridView g, String function)
{
    foreach (GridViewRow gvr in g.Rows)
    {
        Control x = gvr.Cells[0].Controls[0];
        LinkButton y = (LinkButton)x;
        y.OnClientClick = function;
    }
}
于 2016-11-02T12:02:29.710 回答