0

我们有一组数据(只是地点的名称),但超过 25k+。有人问我是否有办法(总是有)搜索这些数据,然后根据用户输入从这些数据中返回一个值。

现在我的技能确实在于 XHTML 和 CSS,我可以涉足 JSP 和 JQuery,但我不确定最好的方法。我们能:

  1. 将数据存储在访问数据库中,然后编写查询以根据用户输入选择值?然后需要在网页上显示此输出。不过,这需要用什么语言完成?

  2. 我发现了一个我认为非常棒的 JQuery 'Quicksearch' 插件(http://lomalogue.com/jquery/quicksearch/super_table.html

现在我喜欢 2) 的想法,因为它是在 JQuery 中完成的,但我认为这对于这种大小的数据是不可行的,尤其是因为页面会很大(尽管我假设一些数据可能被隐藏)。有没有更简单的方法?我错过了什么吗?

感谢这可能被认为是模糊的,所以很抱歉,但我不知道最好的方法是什么。

谢谢

4

3 回答 3

1

根据我对您正在从事的项目的了解,最好将数据划分为(也许是基于地理的)块。也许按州/省或地方类型。然后,您可以设计简单的 SQL 查询,以根据此排序标准从数据库中提取一长串地点。这些将允许您将可管理数量的数据提取到页面中。返回哪个数据块可以基于访问者的地理位置或基于用户输入(“选择区域”)。该数据可以通过 AJAX 移动到页面:http: //api.jquery.com/jQuery.ajax/

我设想访问者选择一个区域。这样做会触发 AJAX 请求,该请求会发送到一个 PHP 脚本,该脚本在 SQL 查询中使用该“区域”,该脚本将该区域中的所有地名返回给 PHP 脚本。脚本完成后,AJAX 请求(将耐心等待脚本完成)将获取所有数据作为 HTML 并将其拉回页面。然后由页面上的 jQuery 将其格式化为表格,然后 QuickSearch 就可以做到这一点。

或者,您可以让 PHP 以 JSON 格式返回数据,这将使数据在返回页面后更易于管理。然而,这需要熟悉 JSON 以及如何在 jQuery/javascript 中使用它。

于 2011-07-05T16:30:00.750 回答
0

如果没问题,最好在服务器端完成此操作,在这种情况下,您应该将数据存储到数据库中。您将使用 SQL 语句从数据库中查询条目(学习基本 SQL 并不难)。SQL 语句将嵌入到您使用的任何服务器端脚本语言(PHP、JSP 等)中。只需在您的语言文档中查看如何访问数据库即可。

在网页中存储/隐藏数据,然后使用 Javascript/JQuery 进行搜索将非常慢(至少 10 秒左右)。这是可行的并且不是特别困难,但对于大多数应用程序来说,这种迟缓是不可接受的。

于 2011-07-05T15:14:11.133 回答
0

tskuzzy 是对的,但遗漏了一个关键点——这是 AJAX 非常适合的类型。您可以将数据存储在数据库中,并在服务器端检索它。您可以使用 AJAX 来回传递用户值,并从服务器获取响应,然后使用 jquery/javascript 来显示结果。这样,您不会有不断的页面加载。

于 2011-07-05T15:26:38.743 回答