Ciao a tutti...
Sto cercando di utilizzare una textbox, stile facebook, quindi con il suggerimento delle informazioni da inserire.
In precedenza utilizzavo l'AjaxControlToolkit di Asp.NET poi però mi è stato suggerito di utilizzare JQuery.
ho trovato alcuni esempi, però nonostante credessi di aver impostato correttamente tutto il codice; non mi viene richiamato il WebService. Vi posto il mio codice...
Questa è la mia parte Jquery
codice:<script type="text/javascript"> $(document).ready(function () { $(".tb").autocomplete({ source: function (request, response) { $.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: "AutoCompleteDataSource.asmx/SuggestedCustomers", dataType: "json", data: "{'Value':'" + request.term + "'}", success: function (data) { response($.map(data.d, function (item) { return { label: item.Name + '(' + item.Value + ')', value: item.Name } })) } }); }, minLength: 2, select: function (event, ui) { }, open: function () { $(this).removeClass("ui-corner-all").addClass("ui-corner-top"); }, close: function () { $(this).removeClass("ui-corner-top").addClass("ui-corner-all"); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); } }); }); </script>
Questa la mia TextBox
codice:<asp:TextBox ID="AutoCompleteText" runat="server" CssClass="tb"></asp:TextBox>
e infine il mio Web Method del Web Service...
Forse mi manca ancora qualche pezzo di codice da inserire?codice:[WebMethod] public string[] SuggestedCustomers(string q) { connStr = ConfigurationManager.ConnectionStrings["ACOConnectionString"].ConnectionString; conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "SELECT idGalleria, Titolo FROM Galleria WHERE Titolo LIKE '%" + q +"%'"; cmd.Connection = conn; List<string> items = new List<string>(); try { conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); // Add items into string array while (reader.Read()) { items.Add(reader["idGalleria"].ToString() + " " + reader["Titolo"].ToString()); } // Return array return items.ToArray(); } catch (Exception ex) { items.Add(ex.ToString()); return items.ToArray(); } }

Rispondi quotando
