【问题标题】:AutoSuggest in a asp.net using Ajax controls使用 Ajax 控件的 asp.net 中的 AutoSuggest
【发布时间】:2011-08-15 15:52:19
【问题描述】:

我正在尝试在 TextBox 中进行自动建议,并且我使用了 Ajax 控件来执行此操作。我给电影数组一些值。我想通过使用用户用于登录网站的电子邮件 ID 过滤用户表来从数据库中提供该值。我无法将 Label 值调用到下面的方法中。我在页面加载期间将用户的电子邮件 ID 存储在标签中。帮我做。

[System.Web.Services.WebMethodAttribute(),System.Web.UI.WebControls, System.Web.Script.Services.ScriptMethodAttribute()]
public static string[] GetCompletionList(string prefixText, int count, string contextKey)
{
   // Create array of movies
    string[] movies = {"Joey", "Joester", "Joker", "Joeic", "Joic", "Shrek II"};

    // Return matching movies
    return (from m in movies where m.StartsWith(prefixText,StringComparison.CurrentCultureIgnoreCase) select m).Take(count).ToArray();
}

【问题讨论】:

    标签: c# asp.net ajax ajaxcontroltoolkit


    【解决方案1】:

    如果您使用的是 AJAX 控制工具包,您可以查看示例 here

    我不确定标签是关于什么的,但您需要设置UseContextKey=true; 并为ajaxToolkit:AutoCompleteExtender 指定上下文键

    在您的情况下,您可以将以下代码添加到 Page.Load:

    if(!Page.IsPostBack)
    {
      AutoCompleteExtenderID.ContextKey = LabeWtihEmal.Text;
    }
    

    【讨论】:

    • 标签存储登录系统的用户的Email id。我需要该值来检索数据库中的值
    【解决方案2】:

    这是因为 web 方法是静态的。在加载页面时,将 AutoCompleteExtender 的上下文键设置为标签值(电子邮件 ID)。另外,请确保 UseContextKey 设置为 true。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多