【问题标题】:Jquery/ajax: autocomplete with ajax from a substring in textbox?Jquery/ajax:使用文本框中子字符串的 ajax 自动完成?
【发布时间】:2012-09-01 07:56:53
【问题描述】:

我在asp.net 中有这个txt_Remarks 文本框,我所做的是使用 ajaxToolkitLibrary 来指定这样定义的自动完成列表的来源,

[WebMethod]
public string[] GetItemRemarks(string prefixText, int count)
{
    if (count == 0)
    {
        count = 10;
    }

    Random random = new Random();
    List<string> items = new List<string>(count);
    SqlCommand con = new SqlCommand();
    SqlDataReader sdr = null;
    try
    {
        SqlCommand cmd = new SqlCommand();
        cmd.CommandText = "SELECT REMARKS FROM mstRemark WHERE BranchId='"+ Globals.BranchID +"' AND Id<>1 AND REMARKS like '%" + prefixText.Trim() + "%' ";
        sdr = ExecuteReader(cmd);
        while (sdr.Read())
        {
            items.Add("" + sdr.GetValue(0));
        }
        sdr.Close();
        sdr.Dispose();
    }
    catch (Exception )
    {

    }
    return items.ToArray();
}

我想要什么,在选择项目后说 premium user 而不是结束自动完成,在此处放置一个逗号,并根据用户现在输入的内容向用户显示新的项目列表。

说,他开始输入 p== 它显示高级、预定义、模式等。当他单击高级时,它被设置在文本框中,然后在那里放一个逗号,他可以再次输入,说他再次键入 p== 它应该再次显示高级、预定义、模式,这次他单击模式,文本框将显示 preminum, pattern 并允许他像这样工作,直到他单击其他地方。 所以,基本上这个自动完成应该基于自定义子字符串工作,我也尝试使用 $.ajax() 但没有运气,我什至无法让它工作.. 那么,如何做到这一点呢?

编辑: 类似于 stackoverflow 中发生的事情 当您输入开始输入标签时,它会显示一个列表,当您选择它时,它会输入到框中,并且您可以再次键入并将该标签添加到列表中..

【问题讨论】:

    标签: jquery asp.net ajax ajaxcontroltoolkit


    【解决方案1】:

    您可以查看 Chosen jquery 插件,我相信它的功能与您所描述的完全一样。

    http://harvesthq.github.com/chosen/

    【讨论】:

    • 谢谢你!它正是(或多或少)我正在寻找的东西!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多