问题描述
|
经过近两天的搜索和研发,我终于得出了以下一些基于jQuery的自动完成插件,这些插件我觉得很有价值,并且适合我的网络应用。
我有一个基于ASP.Net C#开发的基于MVC2的Web应用程序。我将L2S(LINQ to sql)作为我的DAL,我使用服务层体系结构通过L2S来获取数据。
现在,我要进行一些“查找”
其中的选择列表可能
大(即1000条或更多记录),因此
有时我想要我的自动完成外观
充满活力(即,我给页面
从中获取值和
在下拉列表中显示),但是
简单的也喜欢10-20的值
我想静态渲染。
简而言之,我需要一个v.simple和简单直接的自动完成插件来完成这项工作,而不会问我太多问题或需要太多.js文件(当然不包括jQuery)。
这是我的研发摘要以及结论-
简单,静态,包含search(
http://frontensemble.com/hyjack/)
简单,静态/动态,仅从搜索开始(
http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/)
复杂,静态/动态,组合框之类的内容包含搜索功能以及更多其他功能(
http://jqueryui.com/demos/autocomplete/
http://docs.jquery.com/UI/自动完成/
)
简单,静态/动态,包含搜索(
http://www.dyve.net/jquery?autocomplete
)
*请考虑以上(点)作为我的评分。经过一些见解和演示评论后,我得出结论,我将使用#4 dyve.net自动完成插件,因为它似乎可以满足我的需求,而且最重要的是它并不复杂。
您会发现#3功能丰富,功能更多,但又大又复杂,因此我必须选择它。仅供参考,#2只是#3的主要版本(但我面临的唯一问题是,它(#2)仅具有开始匹配项,包含匹配项要好得多)
希望我走上正轨。
编辑:
好吧,晚上出去之后,然后
20小时的挣扎和
实验。我的结论是
jQuery我需要选择一些东西
有更大的支持。用
选项#4-主要问题出现了
当我想基于父项填充子项下拉列表时
它的确会动态填充,但它也会保留旧项目,因此在搜索时会弹出旧项目!
我尝试了它的cacheFlush等。但没有成功。最后,我在作者的Google代码页上发表了评论,并留下了评论。
我最后的打算是使用
jQueryui-好吧,我可以做一些
当我变得太多时的复杂性
其他共享相同插件
图书馆。所以,我的投票权是
#3
解决方法
我已经解决了以下事实:它不会缓存任何搜索结果,并且会在用户输入时针对每个字词执行基于AJAX的搜索。
我将包含jQuery min文件,而不是包含一堆捆绑在一起时大小几乎相同的diff文件。最好下载单个文件,而不要下载多个块,尤其是当一个文件的大小等于jquery min时。
在某些情况下可能更可取的其他参考:
hyjack:很酷,因为它将下拉列表转换为自动完成。如果很棒
我能够渲染下拉菜单
而不是动态查找。
http://frontensemble.com/hyjack/
jQuery Autocompleter:由于存在问题,我不得不放弃它
亲子自动完成
http://code.google.com/p/jquery-autocomplete/issues/detail?id=41