det er ikke sådan jQuery Autocomplete fungerer,
jQuery autocomplete sender automatisk teksten, der er indtastet i tekstboksen til den placering, du angiver i en forespørgselsstreng "term", du får adgang til den i webmetode eller handler som denne
string input = HttpContext.Current.Request.QueryString["term"];
sådan noget her
[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;
}
}
}
dette går på din .aspx-side
$(".ui-autocomplete").autocomplete({
source: "Admin_home.aspx/GetAutoCompleteData",
select: function (event, ui) { }
});
EDIT:
Jeg har faktisk aldrig gjort dette i webmetoden, jeg bruger normalt en handler .ashx, men det burde fungere lige så godt.
når du har ændret alt det, så kør siden i fejlretningstilstand, begynd at skrive i tekstboksen og tilpasse f12 og se den trafik, som dette forårsager - hvis du skriver "abc" skulle det se ud
Admin_home.aspx/GetAutoCompleteData?term=abc
så vil svaret, du måske skal lege lidt med, som standard .net tilføje "d:...." til svaret på klientsiden, men du kan se det og justere i overensstemmelse hermed
Endnu en redigering:
<asp:Textbox ID="query" class="ui.autocomplete">
er ikke det, du lægger i jqueryen
$(".ui-autocomplete").autocomplete({
det burde være
<asp:Textbox ID="query" class="ui-autocomplete">
Endnu en redigering:
Dette mangler et enkelt citat
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%", con))
erstatte med
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%' ", con))