takto automatické dokončování jQuery nefunguje,
Automatické doplňování jQuery automaticky odešle text zadaný do textového pole na místo, které určíte v řetězci dotazu „termín“, ke kterému přistupujete pomocí webové metody nebo obslužného nástroje, jako je tento
string input = HttpContext.Current.Request.QueryString["term"];
něco takového
[WebMethod]
public static List<string> GetAutoCompleteData(string Car)
{
string input = HttpContext.Current.Request.QueryString["term"];
List<string> result = new List<string>();
using (SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["CarsConnectionString"].ConnectionString))
{
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%", con))
{
con.Open();
cmd.Parameters.AddWithValue("@SearchText", input);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
result.Add(dr["Car"].ToString());
}
return result;
}
}
}
to jde na vaši stránku .aspx
$(".ui-autocomplete").autocomplete({
source: "Admin_home.aspx/GetAutoCompleteData",
select: function (event, ui) { }
});
EDIT:
Ve skutečnosti jsem to nikdy nedělal webovou metodou, obvykle používám handler .ashx, ale tohle by mělo fungovat stejně dobře.
až budete mít vše změněno, spusťte web v režimu ladění, začněte psát do textového pole a vložte f12 a sledujte provoz, který to způsobuje - pokud napíšete "abc", mělo by to vypadat takto
Admin_home.aspx/GetAutoCompleteData?term=abc
pak odpověď, se kterou si možná budete muset trochu pohrát, ve výchozím nastavení .net přidá k odpovědi na straně klienta "d:...", ale můžete ji sledovat a podle toho upravovat
Další úprava:
<asp:Textbox ID="query" class="ui.autocomplete">
není to, co jste vložili do jquery
$(".ui-autocomplete").autocomplete({
mělo by to být
<asp:Textbox ID="query" class="ui-autocomplete">
Přesto další úprava:
Chybí zde jediný citát
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%", con))
nahradit
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%' ", con))