jQuery自动完成插件上的多个列和结果
本文关键字:结果 插件 jQuery | 更新日期: 2024-09-24 19:52:06
我正在使用jQuery自动完成插件。不是jQueryUI自动完成。我似乎找不到任何关于jQuery自动完成的好说明。
有人知道如何获得多个搜索参数和结果吗
即用户可以搜索ID、FNAME、LNAME,自动完成会相应地显示结果吗?
所以搜索JON自动完成返回JON DOE N41,JONATHAN MILLER Q66
或
搜索Q6自动完成返回乔纳森·米勒Q66,迈克·坎贝尔Q67等
这是我当前的代码。
ashx处理程序:
public class Search_CS : IHttpHandler {
public void ProcessRequest (HttpContext context) {
string prefixText = context.Request.QueryString["q"];
using (SqlConnection conn = new SqlConnection())
{
conn.ConnectionString = ConfigurationManager
.ConnectionStrings["Rollup2ConnectionString"].ConnectionString;
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "select NUID from T_USER where " +
"NUID like @SearchText + '%'";
cmd.Parameters.AddWithValue("@SearchText", prefixText);
cmd.Connection = conn;
StringBuilder sb = new StringBuilder();
conn.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
sb.Append(sdr["NUID"])
.Append(Environment.NewLine);
}
}
conn.Close();
context.Response.Write(sb.ToString());
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
这是我的HTML:
<script src="Scripts/jquery.autocomplete.js" type="text/javascript"></script>
<link href="Autocomplete/jquery.autocomplete.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(function() {
$("#<%=txtSearch.ClientID%>").autocomplete('Autocomplete/Search_CS.ashx', {width: 400, multiple: true, matchContains: true });
});
</script>
这将与您的SQL查询有关。您将希望以数据库中的这些列为目标,并像NUID一样搜索所有列。
cmd.CommandText = "select NUID, FNAME, LNAME from T_USER where NUID like @SearchText + '%' OR FNAME like @SearchText + '%' OR LNAME like @SearchText + '%'";