Selam yazılım dostları ,uzun bir aradan sonra benim projelerimde sık sık kullandığım,sizin de eğer bilmiyorsanız öğrendikten sonra severek kullanmak isteyeceğiniz ajax işlemine değinmek istedim.
Öncelikle nedir ajax derseniz şöyle anlatayım.
Web uygulamalarının çalışma mantığı Request(istek) ve Response(cevap) üzerine kuruludur.
Client(İstemci) bir server'dan bir istekte bulunur.İsteği alan server bu isteği yorumlayarak ve bazı işlemlerden geçirerek(authentication,authorization vb.) client'a cevap döner.
Bu işlem sırasında ajax kullanmıyorsak tüm sayfa sunucuya post edilir.Bu da sayfanızın yenilenmesine sebep olduğu gibi isteğinizin gerekli olmayan verileri de taşıması manasına gelebilir.
Bunun önüne geçmek için Ajax işlemi kullanılır.Hani bir siteye üye olurken Ülkeyi seçtiğinizde o ülkeye göre şehirler otomatik olarak doluyor ya işte bu tip işlemler ajax kullanılarak yapılıyor sevgili dostlar :)
Ben bu yazımda Jquery kütüphanesi yardımıyla ajax kullanımını anlatacağım.Proje olarak da MVC projesi kullanacağım.
Senaryo olarak şunu düşünelim:
2 seçim kutumuz(combobox) olsun.Bunlardan ilkinde marka ikincisinde ise araba isimleri olsun.Kullanıcının seçtiği markaya göre araba isimleri olan seçim kutumuzun içeriği dinamik olarak değişsin.
Öncelikle 2 adet select elementimizi tanımlayıp markaları option olarak girelim.
Ardından Controller ımızda markaya göre isimleri getiren action ımızı yazalım.
Bu işlemleri tamamladıktan sonra da işin en önemli kısmı olan ajax kısmına geçelim.
Bunun için projemize Jquery yi eklemeyi unutmayalım.
Ardından script elementleri içerisine changeEvent() metodumuzu yazalım.
Burada açıklamamıza başlayalım.
Satır satır gidecek olursak burada yaptığımız şöyle dostlarım:
Öncelikle seçilen marka değerini aldık.Ardından isimleri doldurma işlemi yapmadan önce isimler için bulunan seçim kutumuzun içerisini temizledik.
Sonrasında ajax işlemimizi tanımladık.Bu tanımlamaya bakacak olursak:
Öncelikle yapacağımız isteğin tipini belirtiyoruz.(GET,POST,PUT,DELETE vb.)
Ardından bu isteği server da karşılayacak olan metodumuzun Url sini belirtiyoruz.Burada url mizi belirtirken bu metodumuzun aldığı parametreyi QueryString olarak set ediyoruz.
Bu işlemlerden sonra ise 2 metod tanımlıyoruz.Bunlar ajax işlemi başarılı olunca çalışacak olan success ve ajax işlemi sırasında bir hata ile karşılaşılırsa çalışacak olan error metodumuz.
Ve son olarak da success işleminde controller ımızdaki metodumuzdan dönen sonucu ikinci seçim kutusuna dolduruyoruz.
Evet dostlarım ajax işlemini basit bir örnek üzerinden anlatmaya çalıştım. Kullanımı konusunda takıldığınız noktalar ya da sorularınız olursa yoruma bırakabilirsiniz.
Bir sonraki yazıda görüşmek dileğiyle,esen kalın...