0

我用这个 jquery 插件(https://github.com/gbirke/jquery_pagination)在 asp.net 中创建了一个分页网格,工作正常。但我不知道如何进行搜索。我是新手,非常感谢!

4

1 回答 1

1

让我们暂时忽略 jQuery 并假设您将完全在 .NET 中实现搜索,大概是为了响应带有名为“ q”的查询字符串参数的 GET 请求。

您实际执行搜索的方式无关紧要:我假设您有某种数据库对象或 Lucene 索引搜索器可以为您提供结果,那么只需使用可选提供的分页查询字符串参数对该数据的结果进行分页(通常分别称为startcount)。

例如(用 MVC 的说法)

public ActionResult Search(String q, Int32? start, Int32? count) {

    // example using L2S or EF
    var results = from d in _db.Documents
                  where d.Content.Contains("q")
                  select d;
    if( start != null ) results = results.Skip( start.Value );
    results = results.Take( count != null ? count.Value : 25 );

    return View( results );
}

现在,当您涉及 jQuery 时,我假设您想要异步进行搜索。然后只需重新实现服务器端Search操作,但返回 JSON、XML 或原始 HTML 片段而不是整个视图文档。

大概你会为文本框的按键事件执行一个事件处理程序(检测 Enter/Return 键),触发对 Search 控制器操作的 Ajax 请求,然后将响应转换为 HTML(如果还没有)然后将其插入您的结果表中。简单的。

由于各种原因,省略了进一步的技术细节。

于 2012-09-03T03:14:39.860 回答