将用户ID从处理程序发送到asp.net中的aspx页面

本文关键字:asp net 中的 页面 aspx ID 用户 处理 程序 | 更新日期: 2023-09-27 18:01:14

我在asp.net上工作。我已经使用handler应用了全文搜索功能。现在,我希望当用户从列表中选择一个名字(这是在输入关键字后建议的(时,页面应该重定向到那个人的个人资料。

<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个人资料。如何将用户重定向到特定用户的配置文件页面?

将用户ID从处理程序发送到asp.net中的aspx页面

如何使用服务器。转移或响应。是否重定向search_Click中的方法?

这里提供了您的问题的答案-如何获得在自动完成中选择的给定用户的Profile_Id:

jQuery UI使用值自动完成