2011-08-15 10 views
2

私はTextBoxで自動提案をしようとしており、そのためにAjaxコントロールを使用しました。私は映画配列にいくつかの値を与えています。ユーザーがWebサイトにログインする際に使用した電子メールIDを使用してユーザーテーブルをフィルタリングして、データベースからその値を得たいとします。私はLabel値を以下のメソッドに呼び出すことができません。私はページの読み込み中にラベルにuserの電子メールIDを格納しました。それを手伝ってください。あなたはAJAXコントロールツールキットを使用している場合Ajaxコントロールを使用してasp.netのAutoSuggest

[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(); 
} 

答えて

1

あなたは一例hereを見ることができます。

私はおよそラベルが何であるかわからないけど、あなたはPage.Loadに次のコードを追加することができますUseContextKey=true;を設定し、あなたの場合はajaxToolkit:AutoCompleteExtender

のコンテキストキーを指定する必要があります。

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

ラベルには、システムにログインするユーザーの電子メールIDが格納されます。私はデータベースの値を取得するためにその値が必要です – rookie

+0

更新された答えをご覧ください。 –

0

ウェブメソッドが静的であるためです。ページの読み込み時に、AutoCompleteExtenderのコンテキストキーをラベル値(電子メールID)に設定します。また、UseContextKeyがtrueに設定されていることを確認してください。

関連する問題