jQuery自动完成onselect重定向(来自数据库的信息)

时间:2014-02-17 07:58:30

标签: jquery asp.net jquery-ui

我希望进行自动填充搜索输入,当用户选择项目时,他会被重定向到网络上的某个页面。 我有一个包含名称和URL的数据库。到目前为止,我已经设法从数据库中获取名称,自动完成功能确实有效。事实是,我无法弄清楚如何将select事件与名称的特定Url建立联系。

我正在使用asp.net:

我的.ASHX文件:

   public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "application/javascript";
        string cnString = "cnnstringlocation";
        string sql = "SELECT Name FROM [Table] WHERE Name LIKE  '%'+@term+'%' ";
        SqlCommand cmd = new SqlCommand(sql, new SqlConnection(cnString));
        cmd.CommandType = CommandType.Text;
        cmd.Parameters.AddWithValue("@term", context.Request.QueryString["term"]);
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        da.Fill(dt);
        string[] items = new string[dt.Rows.Count];
        int ctr = 0;


        foreach (DataRow row in dt.Rows)
        {
            items[ctr] = (string)row["Name"];
            ctr++;
        }

        context.Response.Write(new JavaScriptSerializer().Serialize(items));


    }

自动完成查询(这很简单,我已经做了几次尝试搞乱数据库并更改源代码,所以我也可以访问Urls但没有任何运气)

        $('#tags').autocomplete({
            source: 'Autocomplete.ashx'

        });

我对jQuery很新,但我知道源代码不仅应包含重新命名Names的字符串,还应包含每个名称的Url。我无法在任何地方找到正确的语法。 编辑:我想我可以创建另一个.ASHX文件,它将触发onselect然后返回所需的特定URL。这是一种正确的方法吗?有更简单的方法吗? 感谢您对此事的任何启发。

1 个答案:

答案 0 :(得分:0)

使用select函数,然后您可以在选择此处后重定向参考URL

http://api.jqueryui.com/autocomplete/#event-select