使用Repeater或AJAX调用页面并在飞行中创建表格?

时间:2013-04-12 21:47:19

标签: jquery asp.net ajax

我从普通的ASP.NET编程进入AJAX / jQuery。

现在我有一个带有Repeater的Web表单,它绑定在服务器端,基本上是带有数据的HTML表。我在客户端做分类,着色等。

我还有一些过滤字段(日期范围等)和“刷新”按钮,它会回发刷新页面。

我想知道使用来自AJAX调用的数据填充HTML表格是否更有利/更轻?

那么,用户按下“刷新”并用新数据抓取JSON并重新填充表格?在页面启动时,我进行默认的AJAX调用?

这样:

  1. Page会快速加载
  2. 无需重新加载/发布
  3. 刷新数据时,用户将具有可视化队列(微调器)
  4. 我对如何做到这一点的想法是正确的,还是应该以旧方式完成?

3 个答案:

答案 0 :(得分:2)

我会避免使用ASP.NET这样的东西。虽然现在看起来很诱人但是很容易使用ASP.NET,这将导致头疼。我的建议是使用一个简单的Web服务,它使用AJAX调用填充HTML表。当出现问题(并且它们将在某些时候出现)时调试会更容易,并且比使用更新面板更有效。

答案 1 :(得分:1)

一种选择是使用jQuery表插件,如jQuery DataTables

就像调用$('#yourTableId').dataTable();一样简单。这将为您提供一个可排序,可过滤的分页表...即插即用您现有的代码和表。排序和过滤是内置的,不需要回发。

当您返回大型数据集时,它也与AJAX data sources(JSON提要)兼容,但这需要更多的工作。

答案 2 :(得分:0)

您可以使用ASP.NET AJAX更新面板,为您完成很多艰苦的工作。

我还建议使用Knockout.js,它提供了一种将客户端界面绑定到JSON对象模型的绝佳方法。然后你可以让jQuery从客户端获取服务器上的数据,淘汰器将处理接口更改。

http://knockoutjs.com/

否则你的方法也会有用。