miércoles, 21 de enero de 2009

Autcompletar textbox con AJAX para búsquedas

Encontré algo bien didáctico y útil a la vez que por el momento anda un poco de moda y es relativamente nuevo que son las búsquedas tipo "intellisense" o "code completion" que tienen las herramientas de desarrollo para facilitar la codificación propiamente, en este caso para buscar algún texto.

Los pasos son utilizar el control de ajax toolkit llamado AutoCompleteExtender:

asp:TextBox ID="txtFiltro" runat="server">
TargetControlID="txtFiltro" MinimumPrefixLength="1" ServiceMethod="GetNames">




En donde ServiceMethod es el método utilizado para realizar la búsqueda y la misma se hace a través de un webmethod de un webservice, como el que sigue:

[System.Web.Services.WebMethod]
public static string[] GetNames(string prefixText, int count)
{
dbDataContext db = new dbDataContext();
return db.Countries.Where(n => n.Nombres.StartsWith(prefixText)).OrderBy(n => n.Nombres).Select(n => n.Nombres).Take(count).ToArray();
}



Seguidamente a través de este link hay un ejemplo detallado de como utilizar:

http://www.dbtutorials.com/advanced/ajax-sql-autocomplete-cs.aspx

Saludos.

domingo, 18 de enero de 2009