好的DropDownList或ComboBox自动完成过滤控制

时间:2011-06-17 03:22:32

标签: asp.net ajax

我正在寻找一个好的DropDownList或ComboBox,我可以使用它来允许用户输入数据并动态过滤DDL中的值。

我是一个Javascript NOVICE,但大多数解决方案可能都使用Javascript(只要我不需要了解幕后的人,我觉得这很好......大声笑)。

4 个答案:

答案 0 :(得分:2)

有两种自动完成功能:

  • 使用静态数据进行自动填充,其中在加载时填充按需过滤
  • Ajax自动填充功能,其中项目按需填充和过滤

静态自动填充适用于不会对页面加载造成太大负担的小型数据集。 Ajax自动完成功能对于大型数据集更好,但由于Ajax请求而导致延迟。我的经验是,Ajax自动完成最好用流行的客户端控件实现,例如jQuery UI autocomplete,而不是专有的ASP.NET控件。原因是兼容性和支持对于流行的客户端控件更好,您应该能够找到满足您特定需求的解决方案。使用ASP.NET控件,您更有可能自己完成。

这就是说,有一些ASP.NET控件,如ASP.NET AJAX Control Toolkit附带的免费ComboBoxAutoCompleteExtender,以及Telerik RadComboBox和DevExpress {等商业控件。 {3}}。所有这些都适用于非ajax自动完成,并且比jquery UI自动完成更容易填充数据。有了Ajax请求,我无法正常运行Telerik RadComboBox,并切换到jQuery UI自动完成。但是对于静态数据,我仍然使用RadComboBox和ASPxComboBox。

使用ASP.NET组合框控件要记住的一件事是,如果启用了ViewState,则任何较大的数据集都会占用大量空间。回发比页面加载更麻烦,因为用户通常具有比下载带宽更少的上载带宽。使用Telerik RadComboBox,我曾经在使用ajax按需自动完成时禁用了viewstate。

答案 1 :(得分:1)

我建议使用jQuery UI的自动完成控件:

如果您对jQuery UI控件不满意,可以找到许多其他自动完成jQuery插件here

答案 2 :(得分:0)

check 这个。它可能对你的情况有所帮助。

答案 3 :(得分:-1)

Take a look at Shield UI's autocomplete combobox widget demo - it is a powerful component available for pure JavaScript, ASP.NET and ASP.NET MVC.