处理选择框中的大量数据

     2023-03-11     170

关键词:

【中文标题】处理选择框中的大量数据【英文标题】:Dealing with huge data in select boxes 【发布时间】:2011-06-29 12:10:21 【问题描述】:

您好,我正在使用 jQuery 并从我的一个 mySQL 表中检索“项目”。我在该表中有大约 20,000 个“项目”,它将在我的表单中用作搜索参数。所以基本上他们可以搜索包含该“项目”的“购买”。

现在我需要他们能够从下拉列表中选择“项目”,但是用 20,000 个“项目”填充下拉列表需要很长时间。我想知道是否有任何支持自动完成下拉框分页的 jQuery 插件。

这样,用户可以开始输入前几个字母并过滤列表,或者只需单击箭头并查看大约 20 个项目,最后一个是“请单击以获取更多信息”。

我愿意接受任何其他关于处理庞大数据集和使用所述数据集填充 HTML 选择框的建议。

此搜索页面上可能有多个选择框,用户可以在其中选择“项目”或“客户”或任何类似的内容,然后点击“搜索”。

【问题讨论】:

当您有 20000 个项目时,是时候将其从下拉菜单中移出并移到允许搜索或其他内容的页面上的真实菜单中了。 真的会有人滚动浏览 20,000 个项目来找到他们的项目吗?我会推荐一个分页/排序/搜索字段或其他东西来为用户提供更好的体验。那是我的 $.02 如何使用带有 ajax 和服务器端查询的自动完成/建议。并不是说您应该切换 js 框架,而是查找 dojo 的 FilteringSelect 的示例,这正是您连接到 QueryReadStore 时想要的。我想 Extjs 也有类似的东西。 是的,我在很多项目中都使用过 Dojo,这就是我想到使用选择框进行分页和自动完成的地方。我正在为我当前的项目使用 jQuery,很高兴知道它们也具有自动完成功能。这可能对我有用。谢谢大家! 【参考方案1】:

我认为没有特定的插件可以满足您的需求,但您应该可以很容易地自己编写一个。

基本上这个概念是这样的:

使用 jQuery $.ajax 从数据库中检索数据 将 2 个参数从 jQuery 传递到您的数据库 SELECT 语句 关键字 页面索引 搜索以关键字开头的所有项目(自动完成),但只返回特定数量的结果(即 20) 在下拉列表中填充结果后,检查确实有超过 20 个项目,并附加一个名为 请点击查看更多... 的额外 <option> > 通过检查它的索引并使用下拉列表onchange 事件将相同的$.ajax 调用绑定到<option>(它的索引将为20,因为它是列表中的第21 项)并增加您发送到的pageIndex数据库

如果您在PHP/mySQL 中的分页方面需要更多帮助,请查看此tutorial。

【讨论】:

【参考方案2】:

对于这么大的数据集,是时候使用 Ajax...

查看这些自动完成插件:

http://www.pengoworks.com/workshop/jquery/autocomplete.htm

http://code.google.com/p/jquery-autocomplete/

【讨论】:

感谢这些链接真的很有帮助。我完全忘记了 jQuery 也有一个默认的自动完成插件......【参考方案3】:

对于任何类型的下拉列表来说,20000 个项目都太大了,除非该列表只带回项目以响应搜索,最好是其中至少包含几个字符的搜索。 “点击更多”似乎很弱,不是下拉菜单的典型行为。如果用户想要的项目是列表中的 10000 个项目怎么办?

假设您的项目是简单的名称/值对(字符串名称、整数 ID 等)。

然而,JSON 可以以轻量级的方式表示 20000 个项目。您可以创建一个简单的客户端对话框(或列表),它绑定到这些项目,通过它们进行页面,并提供实时过滤。这绝对是可能的(我已经做到了),但它需要大量的自定义脚本或现有控件。

这种方法的好处是您可以在每次击键时进行实时搜索。令人惊讶的是,JavaScript 将非常轻松地处理对大型数据集的简单搜索。

如果性能是关键,20000 项仍然太大,即使在 JSON 中也是如此。将客户端脚本与服务器代码相结合,用于搜索、过滤、分页等,并且只向用户呈现有限的结果集。

编辑:如果您不想编写自己的数据表控件,这是使用 JSON 的网格的一个可能选项:http://developer.yahoo.com/yui/examples/datatable/

【讨论】:

在 pandas 数据框中的特定时间之间选择数据

】在pandas数据框中的特定时间之间选择数据【英文标题】:SelectingDatabetweenSpecifichoursinapandasdataframe【发布时间】:2013-10-1107:59:59【问题描述】:我的PandasDataframe框架看起来像这样1.2013-10-0909:00:052.2013-10-0909:05:003.2013-10-0910:00:004........ 查看详情

如何通过其编号而不是名称选择数据框中的列

】如何通过其编号而不是名称选择数据框中的列【英文标题】:Howtoselectacolumninadataframebyitsnumberinsteadofitsname【发布时间】:2019-11-0415:55:21【问题描述】:我想在Spark数据框中按其编号而不是名称来选择一个列。有可能吗?谢谢【... 查看详情

逐行从备忘录框中提取文本

...看存储在备注字段中的悖论表中的大量数据。我需要逐行处理这个数据并处理每一行。如何告诉Delphi逐一获取备注字段中的每一行?我可以使用#13#10作为分隔符吗?【问题讨论】:【参考方案1】:假设备忘录字段中的内容使用#1... 查看详情

根据向量中的 *not* 选择 R 数据框中的列

】根据向量中的*not*选择R数据框中的列【英文标题】:SelectingcolumnsinRdataframebasedonthose*not*inavector【发布时间】:2012-08-2520:14:27【问题描述】:我很熟悉能够像这样从R数据框(或矩阵)中提取列:df.2<-df[,c("name1","name2","name3")]但... 查看详情

Pandas 数据框中的随机行选择

】Pandas数据框中的随机行选择【英文标题】:RandomrowselectioninPandasdataframe【发布时间】:2013-04-0204:12:00【问题描述】:有没有办法从Pandas的DataFrame中选择随机行。在R中,使用car包,有一个有用的函数some(x,n),它类似于head,但在... 查看详情

Pandas 数据框中的随机行选择

】Pandas数据框中的随机行选择【英文标题】:RandomrowselectioninPandasdataframe【发布时间】:2013-04-0204:12:00【问题描述】:有没有办法从Pandas的DataFrame中选择随机行。在R中,使用car包,有一个有用的函数some(x,n),它类似于head,但在... 查看详情

从熊猫数据框中的组内选择特定行

】从熊猫数据框中的组内选择特定行【英文标题】:Selectparticularrowsfrominsidegroupsinpandasdataframe【发布时间】:2015-12-0314:32:20【问题描述】:假设我有一个如下所示的数据框:grouplevel011011102111325425539639739838想要的输出是这样的:gro... 查看详情

选择最后 n 列并排除数据框中的最后 n 列

】选择最后n列并排除数据框中的最后n列【英文标题】:Selectinglastncolumnsandexcludinglastncolumnsindataframe【发布时间】:2016-01-0715:50:36【问题描述】:我该怎么做:选择数据框中的最后3列并创建一个新数据框?我试过了:y=dataframe.iloc... 查看详情

逻辑操作:从数据框中的列中选择两个值

】逻辑操作:从数据框中的列中选择两个值【英文标题】:Logicoperation:Selecttwovaluesfromacolumninadataframe【发布时间】:2019-09-3022:28:48【问题描述】:我有一个数据框如下,df2=pd.DataFrame(\'a\':[\'one\',\'one\',\'two\',\'three\',\'two\',\'one\',\'six... 查看详情

如何根据熊猫数据框中的字符串选择和子集行?

】如何根据熊猫数据框中的字符串选择和子集行?【英文标题】:Howtoselectandsubsetrowsbasedonstinginpandasdataframe?【发布时间】:2019-09-2212:31:37【问题描述】:我的数据集如下所示。我正在尝试对我的pandas数据框进行子集化,以便仅选... 查看详情

如何根据条件选择R数据框中的连续行?

】如何根据条件选择R数据框中的连续行?【英文标题】:HowtoselectcontinuousrowsinRdataframebasedonconditions?【发布时间】:2018-10-2515:45:02【问题描述】:我有一个数据框df,它有date、group和gapdays列。我想为一个组选择从最新日期(最大... 查看详情

根据向量中的值从数据框中选择行

】根据向量中的值从数据框中选择行【英文标题】:Selectrowsfromadataframebasedonvaluesinavector【发布时间】:2012-07-2116:06:46【问题描述】:我有类似这样的数据:dt<-structure(list(fct=structure(c(1L,2L,3L,4L,3L,4L,1L,2L,3L,1L,2L,3L,2L,3L,4L),.Label=c("a... 查看详情

如何使用 selectInput 从 R 中的数据框中选择特定列?

】如何使用selectInput从R中的数据框中选择特定列?【英文标题】:HowcanIselectaspecificcolumnfromadataframeinRusingselectInput?【发布时间】:2019-10-1816:30:20【问题描述】:我想从下拉列表中选择选项,这些选项作为不同的属性存储在我的数... 查看详情

使用 pandas 数据框中的文本字符串数据进行条件数据选择

】使用pandas数据框中的文本字符串数据进行条件数据选择【英文标题】:Conditionaldataselectionwithtextstringdatainpandasdataframe【发布时间】:2017-03-2913:44:03【问题描述】:我已经看过但似乎无法回答以下问题。我有一个与此类似的pandas... 查看详情

如何从 pyspark 中的数据框中仅选择 70% 的重新编码?

】如何从pyspark中的数据框中仅选择70%的重新编码?【英文标题】:howtoselectonlyto70%ofrecodesfromdataframeinpyspark?【发布时间】:2019-06-0408:33:21【问题描述】:我有一个如下所示的数据框+----+-----+--------------------+|test|count|support|+----+-----... 查看详情

根据熊猫数据框中的最后一个值选择列

】根据熊猫数据框中的最后一个值选择列【英文标题】:Selectcolumnsbasedonlastvalueinpandasdataframe【发布时间】:2021-11-3021:54:44【问题描述】:我以下面的数据框为例。我想遍历每个wag数字并根据其最后一个值仅选择列A或B。例如,如... 查看详情

复制训练示例以处理 pandas 数据框中的类不平衡

】复制训练示例以处理pandas数据框中的类不平衡【英文标题】:Duplicatingtrainingexamplestohandleclassimbalanceinapandasdataframe【发布时间】:2018-06-3013:59:17【问题描述】:我在pandas中有一个包含训练示例的DataFrame,例如:feature1feature2class00... 查看详情

根据熊猫中多列中的值从数据框中选择行

】根据熊猫中多列中的值从数据框中选择行【英文标题】:SelectingrowsfromaDataframebasedonvaluesinmultiplecolumnsinpandas【发布时间】:2015-10-2317:35:42【问题描述】:这个问题非常与another相关,我什至会使用这个问题上非常有用的公认解决... 查看详情