0

我有这个txt_Remarks文本框asp.net,我所做的是使用 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中发生的事情,它显示一个列表,当您选择它时,它被输入到框中,您可以再次输入并将该标签添加到列表中..

4

1 回答 1

1

您可以查看 Chosen jquery 插件,它几乎完全符合您所描述的我相信。

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

于 2012-09-02T01:34:55.167 回答