bukan itu cara kerja jQuery Autocomplete,
jQuery autocomplete secara otomatis mengirimkan teks yang dimasukkan dalam kotak teks ke lokasi yang Anda tentukan dalam "istilah" querystring Anda mengaksesnya di webmethod atau handler seperti ini
string input = HttpContext.Current.Request.QueryString["term"];
sesuatu seperti ini
[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;
}
}
}
ini masuk ke halaman .aspx Anda
$(".ui-autocomplete").autocomplete({
source: "Admin_home.aspx/GetAutoCompleteData",
select: function (event, ui) { }
});
EDIT:
Saya tidak pernah benar-benar melakukan ini dalam metode web , saya biasanya menggunakan handler .ashx , tetapi ini akan berfungsi dengan baik.
ketika Anda telah mengubah semua itu, kemudian jalankan situs dalam mode debug, mulailah mengetik di kotak teks dan pas dengan f12 dan perhatikan lalu lintas yang disebabkannya - jika Anda mengetik "abc" akan terlihat seperti
Admin_home.aspx/GetAutoCompleteData?term=abc
maka respon yang mungkin harus Anda mainkan sedikit, secara default .net akan menambahkan "d :...." ke respons ke sisi klien, tetapi Anda dapat menontonnya dan menyesuaikannya
Suntingan Lain:
<asp:Textbox ID="query" class="ui.autocomplete">
bukan apa yang Anda masukkan ke dalam jquery
$(".ui-autocomplete").autocomplete({
seharusnya
<asp:Textbox ID="query" class="ui-autocomplete">
Namun, Suntingan Lain:
Ini kehilangan satu kutipan
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%", con))
ganti dengan
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%' ", con))