【问题标题】:Asp.Net MVC Ajax refresh of table contentsAsp.Net MVC Ajax 刷新表格内容
【发布时间】:2011-03-16 08:43:09
【问题描述】:

目前我的页面上有一个表格,我需要使用 Ajax 刷新它。我打算在部分视图中渲染表格,然后调用 MVC 渲染部分更新,这会很简单。

但是,我已经在表格的标题中添加了一堆排序/过滤控件。我现在想刷新表格的内容,而不会丢失标题行中的这些信息。

我不确定最干净的解决方案是什么。我的表可能包含大约 500 行。有人可以提供一些建议吗?谢谢

【问题讨论】:

    标签: jquery ajax asp.net-mvc-2 refresh partial-views


    【解决方案1】:

    我使用 ajax 调用返回 json 数据的操作,并使用 jquery 或一些类似的库处理客户端上的呈现。我认为这是使用 MVC 的最佳方式

    【讨论】:

      【解决方案2】:

      首先,将您的表格设为局部视图,并将表格放入 div 中并提供 ID(类似于“mytablediv”)

      在你看来,使用 Html.RenderPartial 参考局部视图

      在 javascript 中,当您需要刷新该部分时,调用如下: (我假设 jquery 可用)

      $('#mytablediv').load(url /* of the partial view*/);
      

      这将从您的局部视图中获取更新的 html 并将其替换为您拥有的内容。

      【讨论】:

        【解决方案3】:

        我认为 javascript 模板在这里可能是一个可行的解决方案。

        以下内容可能会有所帮助。

        1. jQuery templating engines
        2. http://weblogs.asp.net/scottgu/archive/2010/05/07/jquery-templates-and-data-linking-and-microsoft-contributing-to-jquery.aspx

        另一个选项是服务器端渲染以渲染 tr 并仅更新表的 tbody 元素,假设您有一个包含 tbody 部分和 thead 部分的表,其中包含您的过滤器。 ajax 函数设置需要有一个UpdateTargetId = "tbody-id"

        【讨论】:

          猜你喜欢
          • 2013-01-27
          • 1970-01-01
          • 2016-12-02
          • 1970-01-01
          • 2011-12-10
          • 2013-12-21
          • 2013-02-12
          • 2015-02-08
          • 2015-07-27
          相关资源
          最近更新 更多