Şimdi Ara

ASPX sayfasında autocomplete ?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
5
Cevap
0
Favori
708
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • http://jquery.bassistance.de/autocomplete/demo/ şuradaki autocomplete eklentisini aspx sayfasında nasıl kullanabiliriz bilen arkadaşlar varsa lütfen yardımcı olsunlar



  • bir handler yaz gelen parametrelerle (autocompletenin defaultu "q") .
    document.ready fonksiyonuna autocomplete yapmak istediğin textboxun clientidsini yaz.(bunu zaten autocomplete tuorialda bulabilirsin)
     $("#contentplaceholder_textbox1").autocomplete(); 

    gibi. sonra handlerin döndürdüğü değeri div formatında döndürmen gerekecek.
  • şimdi sayfaya jquery kütüphanesini ekledin geldin birde autocomplete kütüphanesini ekledin.

    sonra autocomplete ozlliğini eklemek istediğin textboxun client id sine autocomplete özelliği vermek istiyorsun. textboxun adı txtNames olsun ve tahmini yöneteceğin datanın döneceği generic handler dosyasının adı da CityNames.ashx olsun. dosya aspx de olabilir. ama aspx dosyalarının onpreinit on init init page_load onloadcomplete gibi zibil gibi fonksiyonları çalışır. bu yuzden requestler için yavaştır.


    $(document).ready(function (){
    $("#txtNames").autocomplete("CityNames.ashx");
    });

    dedin yani sayfa yüklendiğinde bu textboxa autocomplete özelliği ver dedin. evet. verdi. şimdi textboxa harfler girilmeye başlandıgında, her harf girdiğinde (bunun değişik varvasyonları var mesela min 3 karakter girildikten sonra gibi)
    senın handlerine q parametresi ile requestte bulunacak.
    senın handlerde yapman gereken gelen parametreye göre bir response döndürmen gerekecek. yani kullanıcının bir ilin adını yazmaya başladıgında onunla ilgili iller dönmeye başlayacak. tabi bunu handlerde yapacaksın.

    mesela kullanıcı "i" girdi, sen databaseden i ile başlayan bütün illeri çektin . sonra z de girdi. handlere giden q değer olarak "iz" almış oldu. sen iz ile başlayan illeri döndürdün yani izmir ,izmit vs gibi. harfler basıldıkça senın döndürdüğün değerler de değişecektir. çalışma mantıgı özetle bu




  • teşekkürler
  • örnek olarak benim il ilçe semt ve mahalle döndüren mahalleyi yazmaya başlayınca veriyi döndüren handlerim.getalldistircts fonksiyonum da databaseden tüm mahalleleri getiriyor.

     

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Services;
    using Asendal.Service;
    using System.Data;

    namespace Asendal.Web.UI.Services
    {
    //[WebService(Namespace = "http://tempuri.org/")]
    //[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class autocomplete : IHttpHandler
    {

    public void ProcessRequest(HttpContext context)
    {
    context.Response.ContentType = "text/plain";
    List<String> itemList = new List<String>();
    string param = context.Request.Params["q"].ToString();
    DataTable dt = new DataTable();
    dt =Asendal.GetAllDistricts(param);
    string content;
    for (int i = 0; i < dt.Rows.Count; i++)
    {
    string s;
    DataRow dr = dt.Rows[i];
    s = dr[1].ToString() + "/" + dr[2].ToString() + "/" + dr[3].ToString() + "/" + dr[4].ToString();
    itemList.Add(s);
    }
    content = String.Join(System.Environment.NewLine, itemList.Take(20).ToArray());
    context.Response.Write(content);
    context.Response.End();

    }

    public bool IsReusable
    {
    get
    {
    return false;
    }
    }
    }
    }




    < Bu mesaj bu kişi tarafından değiştirildi Kaygerya -- 19 Mayıs 2012; 1:37:27 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.