{"id":366,"date":"2010-10-01T02:12:36","date_gmt":"2010-10-01T02:12:36","guid":{"rendered":"http:\/\/enjoyasp.net\/?p=366"},"modified":"2010-10-01T02:12:36","modified_gmt":"2010-10-01T02:12:36","slug":"%e7%94%a8textbox-dropdownextender-autocompleteextender-%e5%ae%9e%e7%8e%b0%e5%8d%b3%e5%8f%af%e9%80%89%e4%b9%9f%e5%8f%af%e8%be%93%e5%85%a5%e7%9a%84%e5%af%b9%e8%af%9d%e6%a1%86%ef%bc%8c%e5%86%85","status":"publish","type":"post","link":"https:\/\/enjoyasp.net\/index.php\/2010\/10\/01\/%e7%94%a8textbox-dropdownextender-autocompleteextender-%e5%ae%9e%e7%8e%b0%e5%8d%b3%e5%8f%af%e9%80%89%e4%b9%9f%e5%8f%af%e8%be%93%e5%85%a5%e7%9a%84%e5%af%b9%e8%af%9d%e6%a1%86%ef%bc%8c%e5%86%85\/","title":{"rendered":"\u7528TextBox + DropDownExtender + AutoCompleteExtender \u5b9e\u73b0\u5373\u53ef\u9009\u4e5f\u53ef\u8f93\u5165\u7684\u5bf9\u8bdd\u6846\uff0c\u5185\u5bb9\u6765\u81ea\u6570\u636e\u5e93"},"content":{"rendered":"<p>1\uff0caspx\u6587\u4ef6\uff1a<br \/>\n&lt;asp:UpdatePanel ID=&#8221;UpdatePanel2&#8243; runat=&#8221;server&#8221;&gt;<br \/>\n??????????????????????? &lt;ContentTemplate&gt;<br \/>\n??????????????????????????? &lt;asp:TextBox ID=&#8221;txtModel&#8221; Text=&#8221;&#8221; runat=&#8221;server&#8221; Width=&#8221;130px&#8221; CssClass=&#8221;MustInputText&#8221;&gt;&lt;\/asp:TextBox&gt;<br \/>\n?????????????????????????? &lt;asp:Panel CssClass=&#8221;ContainPanel&#8221; ID=&#8221;Panel2&#8243; runat=&#8221;server&#8221;? Width=&#8221;130px&#8221;<br \/>\n??????????????????????????????? Style=&#8221;visibility: hidden&#8221; &gt;<br \/>\n??????????????????????????????? &lt;asp:GridView ID=&#8221;gdModel&#8221; runat=&#8221;server&#8221; ShowHeader=&#8221;False&#8221; BorderWidth=&#8221;0px&#8221; OnRowCreated=&#8221;gdModel_RowCreated&#8221;&gt;<br \/>\n??????????????????????????????? &lt;\/asp:GridView&gt; \/\/\u5f53\u53ef\u9009\u65f6\u7528GridView\u83b7\u53d6\u6570\u636e\u5e93\u6570\u636e\uff0c\u7528\u6765\u663e\u793a\u4e0b\u62c9\u6846<br \/>\n??????????????????????????? &lt;\/asp:Panel&gt;<br \/>\n??????????????????????????<br \/>\n??????????????????????????? &lt;cc1:DropDownExtender ID=&#8221;DropDownExtender2&#8243; runat=&#8221;server&#8221; DropDownControlID=&#8221;Panel2&#8243;<br \/>\n??????????????????????????????? TargetControlID=&#8221;txtModel&#8221; Enabled=&#8221;true&#8221;&gt;<br \/>\n??????????????????????????? &lt;\/cc1:DropDownExtender&gt;<br \/>\n??????????????????????????? &lt;cc1:AutoCompleteExtender ID=&#8221;AutoCompleteExtender3&#8243; runat=&#8221;server&#8221; TargetControlID=&#8221;txtModel&#8221;? CompletionInterval=&#8221;100&#8243;? \/\/\u89e6\u53d1\u65f6\u95f4<br \/>\n??????????????????????????????? CompletionSetCount=&#8221;10&#8243; EnableCaching=&#8221;true&#8221; MinimumPrefixLength=&#8221;1&#8243; ServiceMethod=&#8221;GetModelList1&#8243;<br \/>\n??????????????????????????????? ServicePath=&#8221;~\/WebService\/AutoCompleteService.asmx&#8221;&gt;<br \/>\n??????????????????????????? &lt;\/cc1:AutoCompleteExtender&gt;? \/\/AutoComplete\u7528\u6765\u81ea\u52a8\u586b\u5145\u529f\u80fd<br \/>\n??????????????????????? &lt;\/ContentTemplate&gt;<br \/>\n??????????????????? &lt;\/asp:UpdatePanel&gt;<\/p>\n<p>\u6ce8\uff1aDropDownExtender :\u7528\u6765\u5728\u4e0b\u62c9\u65f6\u586b\u5145\u3002\u4e3b\u8981\u662f\u4e3aTxtBox\u589e\u52a0\u4e0b\u62c9\u529f\u80fd\uff0c\u663e\u793a\u7684\u5185\u5bb9\u6765\u81ea DropDownControlID, DropDownControlID\u7528\u6765\u6307\u5411\u7528\u4ec0\u4e48\u5757\u663e\u793a\uff0cTargetControlID\u7528\u6765\u6307\u5411\u54ea\u4e2a\u63a7\u4ef6\u89e6\u53d1\uff0c\u4e8b\u4ef6\u4e3a\u70b9\u51fb\u3002<\/p>\n<p>?????? AutoCompleteExtender :\u7528\u6765\u8f93\u5165\u65f6\u81ea\u52a8\u5e26\u51fa\u6570\u636e\u5e93\u4e2d\u7684\u76f8\u5173\u63d0\u793a\u3002TargetControlID\u6307\u5411\u54ea\u4e2a\u63a7\u4ef6\u89e6\u53d1\uff0c\u4e8b\u4ef6\u4e3a\u8f93\u5165\u3002\u5f53\u8f93\u5165\u65f6\uff0c\u8c03\u7528webservice,\u6267\u884cServiceMethod\u65b9\u6cd5\uff0c\u8fd4\u56destring[]\u6570\u7ec4\uff0c\u7528\u6765\u663e\u793a\u4e0b\u62c9\u7684\u5185\u5bb9\u5982\uff1a<br \/>\npublic string[] GetModelList1(string prefixText, int count)??????? \/\/prefixText\u540d\u79f0\u4fdd\u6301\u4e0d\u53d8<br \/>\n??? {<br \/>\n??????? ProductBL _ProductBL = new ProductBL();<br \/>\n??????? SqlDataReader dr = _ProductBL.GetModelsByCategory(&#8220;\u4e50\u77e5\u8d2d&#8221;);<br \/>\n??????? DataTable dt = new DataTable();<br \/>\n??????? dt.Load( dr );<br \/>\n??????? List&lt;String&gt; Models = new List&lt;string&gt;(dt.Rows.Count);<br \/>\n??????? for (int i = 0; i &lt; dt.Rows.Count; i++)<br \/>\n??????? {<br \/>\n??????????? Models.Add(dt.Rows[i][&#8220;Model&#8221;].ToString());<br \/>\n??????? }<\/p>\n<p>??????? List&lt;String&gt; returnlist = new List&lt;string&gt;();<br \/>\n??????? foreach( string s in Models ){<br \/>\n??????????? if ( s.IndexOf(prefixText)!= -1 ){<br \/>\n??????????????? returnlist.Add(s);<br \/>\n??????????? }<br \/>\n??????? }<br \/>\n???????<br \/>\n??????<br \/>\n??????? return returnlist.ToArray();<br \/>\n??? }<\/p>\n<p>\u6ce8\uff1a\uff081\uff09\u8981\u60f3\u7528\u6b64\u63a7\u4ef6\uff0c\u8981\u5f15\u5165AjaxControlToolkit.dll<br \/>\n?????? \uff082\uff09\u9875\u9762\u4e0a\u653e\u7f6e\uff1a &lt;asp:ScriptManager ID=&#8221;ScriptManager1&#8243; runat=&#8221;server&#8221;&gt;? &lt;\/asp:ScriptManager&gt;<\/p>\n<p>2, \u4e24\u4e2a\u63a7\u4ef6\u90fd\u542f\u4f5c\u7528\u65f6\u4f1a\u4e71\uff0c\u4e00\u822c\u8fdb\u884c\u63a7\u5236\uff0c\u5f53\u4e00\u5b9a\u6761\u4ef6\u65f6enabled = false;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>1\uff0caspx\u6587\u4ef6\uff1a &lt;asp:UpdatePanel ID=&#8221;UpdatePanel2&#038;#8 [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":[],"class_list":["post-366","post","type-post","status-publish","format-standard","hentry","category-aspdotnet"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts\/366","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/comments?post=366"}],"version-history":[{"count":0,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts\/366\/revisions"}],"wp:attachment":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/media?parent=366"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/categories?post=366"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/tags?post=366"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}