ASP.NET MVC ajax与局部视图分页

时间:2012-06-20 01:28:15

标签: jquery asp.net-mvc pagination

我有一个搜索页面,它使用简单的ajax请求从控制器获取新的搜索结果。

控制器将结果作为呈现的html返回,因此所有客户端脚本必须做的是$('#results')。html(data);

html还包含分页链接。

我想在ajax成功事件处理程序中为这些分页链接添加点击处理程序,但我发现从A的文本属性中获取页码有点蠢..假设链接可以读取" Page 1"," Page 2",然后我正在解析文本。

我这样做错了吗?

我应该在局部视图中生成ajax链接吗?

1 个答案:

答案 0 :(得分:1)

页码可以存储为a元素的数据。您可以在连接事件处理程序时参考数据。传统 - 即。在我的旧应用程序中 - 我会这样做:

<a href="#" name="myLink" data="<%: [pageNumber] %>">
  Page <%: [pageNumber] %>
</a>

然后在jquery方面(即ajax回调):

$('a[name=myLink]').click( function (e) {
  e.preventDefault();
  var pageNumber = $(this).attr('data');
  // do what you have to do with the pageNumber
});

但如果你沿着这条路走下去,你可以(而且应该)引用jQuery data function