jQuery自动完成下拉框

4

经过近两天的搜索和研究,我终于找到了几个基于jQuery的自动完成插件,我认为这些插件值得使用并适合我的Web应用程序。

我正在ASP.Net C#中开发一个基于MVC2的Web应用程序。我使用L2S(LINQ to SQL)作为我的数据访问层,并使用服务层架构通过L2S获取数据。

现在,我将有一些“查找”,其中选择列表可能很大(即1000个或更多记录),因此有时我希望我的自动完成查找是动态的(即我提供从中获取值并在下拉列表中显示的页面)。但也有简单的10-20个值,我希望以静态方式呈现。

总之,我需要一个非常简单和直接的自动完成插件,它可以在不询问我太多问题或要求太多.js文件(当然不包括jQuery)的情况下完成工作。

以下是我的研究摘要及结论:

*请将以上“点”视为我的评分。经过一些洞察和演示评论,我得出结论,我将选择#4 dyve.net自动完成插件,因为它似乎具备我需要的所有功能,并且最重要的是它不复杂。

您会发现,#3具有丰富的功能,但它很大并且变得复杂,所以我必须放弃它。FYI,#2仅是#3的初始版本(但我面临的唯一问题是它(#2)只有以开头的匹配,包含匹配更好)

希望我没跑题。


编辑:

经过一晚上的尝试和20多个小时的挣扎和实验,我得出结论:使用jQuery时,我需要选择一个有更大支持的东西。对于选项#4-当我想要基于父级填充子下拉列表时,主要问题出现了。它确实可以动态填充,但它也会保留旧项目,所以在搜索时,旧项目也会弹出!我尝试了它的cacheFlush等方法,但都没有奏效。最后,我在作者的Google代码页面上发布了我的评论,并离开了它。

  • 我的最终观点是使用jQueryui-当我得到太多共享同一库的其他插件时,我可以处理一些复杂性。因此,我的投票给选项#3

我不清楚你在每个搜索评论中所说的意思。例如,当你说“仅以搜索开始”或“具有包含搜索”时,这是什么意思? - kinakuta
1
@Hemant Tank:有几件事情需要注意。1 您可以只包含jQueryUI自动完成文件,而不是整个jQueryUI库;2 jQueryUI小部件满足您的所有要求;3 jQueryUI小部件可能得到StackOverflow社区最好的支持,并且由jQueryUI团队不断进行调整/更新/修复。你能猜出我会推荐哪一个吗? - Andrew Whitaker
我指的是在我们输入框中键入内容时自动完成执行的搜索。 - Hemant Tank
@Andrew:我看到了jQueryUI,它添加了一些核心文件,称这些文件是必需的(你可以在下载页面上找到依赖项)。 - Hemant Tank
@Hemant:明白了 :) - Andrew Whitaker
显示剩余2条评论
1个回答

2

我已经接受了这个事实,即它不会缓存任何搜索结果,并且在用户输入每个词时将执行基于AJAX的搜索。

我将包括jQuery min文件,而不是包括一堆大小相同的不同文件。当捆绑时,最好只有一个文件下载,而不是多个块,尤其是当那个文件像jquery min一样小的时候。

其他参考可能在某些情况下更可取:

hyjack:很酷,因为它可以将下拉菜单转换为自动完成。如果我能呈现下拉菜单而不是动态查找,那就太棒了。 http://frontensemble.com/hyjack/

jQuery Autocompleter:我不得不放弃它,因为存在父子自动完成的问题。 http://code.google.com/p/jquery-autocomplete/issues/detail?id=41


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接