具有自动完成ASP.NET和数据库的搜索字段

时间:2010-03-28 22:14:04

标签: asp.net jquery database search autocomplete

具有自动填充功能的搜索字段

我想创建一个具有自动完成功能的搜索字段,因此当您编写2或3个字母时,它会显示一个下拉列表,其结果与数据库中的表中的列相匹配。

我一直在网上阅读,我发现它可以用jQuery和AJAX Control Toolkit完成。 但我不知道如何使它比较搜索文本框和数据库并显示匹配的结果?

UPDATE:

我一直在尝试使用Ajax控件工具包中的Autocomplete扩展器,但我不知道如何使用SQL创建Web服务。

UPDATE2

无法让web服务工作,所以一直在查看jQuery UI,它可以执行自动完成但不知道如何使用数据库...:p

UPDATE3

我仍然坚持这一点,所以如果有人知道如何制作适用于Autocomplete扩展器或jQuery UI的数据源(webservice),请帮助我。

我希望自动完成显示:SELECT * FROM TABEL WHERE Title LIKE + '%' @Search + '%'及其MSSQL数据库

3 个答案:

答案 0 :(得分:2)

您最好的选择是创建一个用于与之交互的Web服务。这是一篇非常详细的SO帖子。

jQuery autocomplete in ASP.NET webforms?

答案 1 :(得分:1)

您可以使用Asp.net Ajax控件工具包。

http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/AutoComplete/AutoComplete.aspx

可以搜索数据库,如下所示。

select * from tbl_Country where countryName like '%xxx%'

您可以从Service方法调用sql语句。服务方法可以是Web服务。

<ajaxToolkit:AutoCompleteExtender 
    runat="server" 
    ID="autoComplete1" 
    TargetControlID="myTextBox"
    ServiceMethod="GetCompletionList"
    ServicePath="AutoComplete.asmx"
</ajaxToolkit:AutoCompleteExtender>

在名为AutoComplete.asmx的Web应用程序中创建asmx Web服务。然后创建一个Web方法GetCompletionList。在此方法中,您可以包含System.Data.SqlClient并将查询激发到数据库。

答案 2 :(得分:1)

观看此视频并查看评论回答了我的问题:)

http://www.asp.net/learn/AJAX-videos/video-122.aspx