У меня есть поиск в интернете до публикации этой темы, но я не могу найти решение. Здесь я пытаюсь использовать AutocompleExtender для проекта коллажа в asp.net. AutocompleteExtender отлично работает, когда страница загружается в браузер, но когда я загружаю эту страницу на какой-то другой странице с помощью ajax, тогда autocompleteextender не работает, может ли кто-нибудь помочь понять, что я делаю неправильно?
Код Ajax, который я использую
GetMainContent(getUrlParameter('page'));
function GetMainContent(obj, search) {
$("#main-content").html('<img src="images/loading.gif" / style="Display:block; margin:auto;">');
$.ajax({
type: 'POST',
url: obj + ".aspx",
cache: false,
timeout: 3000,
data: 'search=' + search,
dataType: 'html',
success: function (response) {
$("#main_content").html(response);
},
error: function (response) {
$("#main_content").html(' Error' + response.responseText);
}
});
};
код asp
<asp:TextBox runat="server" id="resturanttext" name="resturanttext" class="form-control form-control-lg form-control-borderless" Style="font-size:30px" Height="48px" width="100%" placeholder="Search By Resturant Name" onkeydown="return (event.keyCode!=13);"/>
<asp:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" ServiceMethod="GetCompletionList" TargetControlID="resturanttext" MinimumPrefixLength="1" CompletionSetCount="5" EnableCaching="false" CompletionListCssClass="AutoCompleteExtender2" CompletionListHighlightedItemCssClass="AutoCompleteExtender2" OnClientItemSelected="ItemSelected" CompletionInterval="100" ShowOnlyCurrentWordInCompletionListItem="true"></asp:AutoCompleteExtender>
Код бэкэнда
[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
public static string[] GetCompletionList(string prefixText)
{
List<string> resturantname = new List<string>();
SQLiteConnection conn = new SQLiteConnection(@"Data Source=" + Globals.Datbase_Path + ";Version=3;");
conn.Open();
string sql = "SELECT resturant_name FROM resturant Where resturant_name Like '%" + prefixText + "%';";
SQLiteCommand command = new SQLiteCommand(sql, conn);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())
{
resturantname.Add(Convert.ToString(reader.GetValue(0)));
}
reader.Close();
command.Dispose();
conn.Close();
return resturantname.ToArray();
}