ऐसा नहीं है कि jQuery स्वत:पूर्ण कैसे काम करता है,
jQuery स्वत:पूर्ण स्वचालित रूप से टेक्स्ट बॉक्स में दर्ज टेक्स्ट को उस स्थान पर भेजता है जिसे आप क्वेरीस्ट्रिंग "टर्म" में निर्दिष्ट करते हैं, आप इसे वेबमाइंड या हैंडलर में इस तरह एक्सेस करते हैं
string input = HttpContext.Current.Request.QueryString["term"];
कुछ इस तरह
[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;
}
}
}
यह आपके .aspx पेज में जाता है
$(".ui-autocomplete").autocomplete({
source: "Admin_home.aspx/GetAutoCompleteData",
select: function (event, ui) { }
});
संपादित करें:
मैंने वास्तव में इसे वेब विधि में कभी नहीं किया है, मैं आमतौर पर एक हैंडलर .ashx का उपयोग करता हूं, लेकिन यह उतना ही अच्छा काम करना चाहिए।
जब आप सब कुछ बदल चुके हों, तब साइट को डिबग मोड में चलाएं, टेक्स्टबॉक्स में टाइप करना शुरू करें और f12 फिट करें और इसके कारण होने वाले ट्रैफ़िक को देखें - यदि आप "abc" टाइप करते हैं तो यह दिखना चाहिए
Admin_home.aspx/GetAutoCompleteData?term=abc
तो प्रतिक्रिया के साथ आपको थोड़ा खेलना पड़ सकता है, डिफ़ॉल्ट रूप से। नेट क्लाइंट पक्ष की प्रतिक्रिया में "डी:..." जोड़ने जा रहा है, लेकिन आप इसे देख सकते हैं और तदनुसार समायोजित कर सकते हैं
एक और संपादन:
<asp:Textbox ID="query" class="ui.autocomplete">
वह नहीं है जो आपने jQuery में डाला है
$(".ui-autocomplete").autocomplete({
यह होना चाहिए
<asp:Textbox ID="query" class="ui-autocomplete">
फिर भी, एक और संपादन:
इसमें एक भी उद्धरण नहीं है
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%", con))
. से बदलें
using (SqlCommand cmd = new SqlCommand("select DISTINCT Car from T_Car where Car like '%'+ @SearchText +'%' ", con))