我正在使用asp.net。我使用处理程序应用了全文搜索功能。现在我希望当用户从列表中选择一个名称时(在输入关键字后建议)页面应该被重定向到该人的个人资料。
<link href="Content/jquery.autocomplete.css" rel="stylesheet" />
<script src="Scripts/jquery-1.4.1.min.js"></script>
<script src="Scripts/jquery-1.3.2.min.js"></script>
<script src="Scripts/jquery.autocomplete.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#<%=txtSearch.ClientID%>").autocomplete('Search_CS.ashx');
});
</script>
<div>
<asp:TextBox ID="txtSearch" runat="server" ></asp:TextBox>
</div>
<asp:Button ID="search" runat="server" Text="Search" OnClick="search_Click" />
当用户在文本框中键入名称时,它会返回具有匹配搜索文本的用户名。它是处理程序(ashx文件)中的处理
public void ProcessRequest (HttpContext context) {
string prefixText = context.Request.QueryString["q"];
using (SqlConnection conn = new SqlConnection(strcon))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "select Profile_ID,FirstName, LastName from UserProfile where FirstName like '%' + @SearchText + '%' OR LastName 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["FirstName"]).Append(" ").Append(sdr["LastName"]).Append(Environment.NewLine);
}
}
conn.Close();
context.Response.Write(sb.ToString());
}
}
}
现在,当用户键入“Tom”时,将打开一个列表,其中所有用户都名为“tom”。当用户选择“Tom John”时,页面应导航到Tom John个人资料。如何将用户重定向到特定用户的个人资料页面?
答案 0 :(得分:1)
如何在search_Click中使用Server.Transfer或Response.Redirect方法?
您的问题的答案 - 如何为自动填充中选择的给定用户获取Profile_Id: