私のアプリケーションでは、「OnClientPopulated」イベントを使用したそのエクステンダーに ajax オートコンプリート エクステンダーを追加しました。私がそこに書いたコード:
<ajax:AutoCompleteExtender OnClientPopulated="getSearch_Populated" ID="AutoCompleteExtenderSearch"
runat="server" TargetControlID="txtSearchbox" MinimumPrefixLength="1" Enabled="true"
EnableCaching="true" CompletionSetCount="12" CompletionInterval="1000" ServiceMethod="GetAppNames"
ServicePath="~/AutoComplete.asmx" DelimiterCharacters="" UseContextKey="true"
CompletionListCssClass="AutoExtender" CompletionListHighlightedItemCssClass="AutoExtenderHighlight"
CompletionListItemCssClass=".AutoExtenderList" OnClientItemSelected="selected_Search">
</ajax:AutoCompleteExtender>
JavaScript:
function getSearch_Populated(sender, e) {
var searchList = sender.get_completionList().childNodes;
var searchText = sender.get_element().value;
for (var i = 0; i < searchList.length; i++) {
var search = searchList[i];
var searchValueArray = (search._value).split("|");
var searchId = searchValueArray[0];
var searchUrl = searchValueArray[1];
var link = document.createElement('a');
var href = document.createAttribute('href');
link.setAttribute('href', searchUrl);
link.innerText = searchId;
search.appendChild(link);
}
}