【问题标题】:Add a new row to Asp.net gridview without refreshing entire grid向 Asp.net gridview 添加新行而不刷新整个网格
【发布时间】:2012-09-11 05:33:10
【问题描述】:

我有一个用于数据输入的 ASP.Net 网格视图。我想要以下功能: 当焦点位于最后一行的最后一个单元格时,按 Tab 键时,应将新行添加到网格视图中。添加新行时,不应刷新整个网格,即最后一行下方应仅出现一个新的空白行。此外,在完成所有数据输入后,单击“保存”按钮(位于网格视图之外)我希望将行中输入的所有数据保存到数据库中。 请帮助我使用此功能。

【问题讨论】:

  • 这里不是你要完整代码的地方,请给我们一些你尝试过的代码?
  • 如果您遇到一些代码问题,我们可以尝试帮助您。我们无法帮助您编写代码。这就是谷歌的目的。

标签: javascript asp.net jquery


【解决方案1】:

检查这个 Code Project Example on Grid-view

希望这篇文章可以帮助您构建关于您的应用程序的想法。

【讨论】:

    【解决方案2】:

    这是可能的,但要实现这一点需要非常讨厌的 hack,为什么? Microsoft 将 ASP.NET GridView 控件设计为在服务器端呈现的控件,然后将其 HTML 标记发送到客户端浏览器。 如果您需要在客户端启用插入,我建议以下替代方案:

    1. (最便宜的时间成本)保留网格视图,并通过在页面上具有单独的容器来启用新记录插入:例如具有创建新记录所需的输入控件的隐藏面板。面板可以使用普通的 JaveScript 在客户端轻松显示或隐藏。当点击“保存”时,输入数据将被发送回服务器并添加到您的数据存储中。

    2. (中等时间成本)迁移到 ASP.NET Repeater 控件。在中继器中,您可以控制可以包含表格最后一行的 FooterTemplate。用任何输入控件填充该行,用一个容器围绕该行,如果用户在最后一行触发 tab 键,您可以简单地显示/隐藏它。

    3. (较大的时间成本)迁移到基于客户端的网格控件,例如 jqGrid

    【讨论】:

      猜你喜欢
      • 2017-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-22
      • 1970-01-01
      • 2023-04-01
      • 2014-01-10
      • 2011-04-13
      相关资源
      最近更新 更多