Yazılım.
CevapSitesi.com Beta!
Çözüm Noktası
Bu siteyi Facebook, Twitter, Google+ veya e-posta ile paylaşın.
| Sorular | Makaleler | Üyeler | Etiketler  | İletişim
Soru sormak ya da cevap vermek için;
giriş yapın veya üye olun.

Sosyal medya hesaplarınızla da giriş yapabilirsiniz.

0



JavaScript ile adres çubuğundan gelen verileri almak

JavaScript kullanarak adres çubuğundan gelen sorgu dizesindeki (QueryString) verileri nasıl alabilirim?

Soran:07.04.16 19:29
misafir  

1 Cevap


0


İnternette arama yapıldığında düzenli ifadelerle yapılan bir sürü çözüm bulunabilir. Ancak ben düzenli ifadeleri pek tercih etmediğimden aşağıdaki fonksiyonu kullanıyorum.

  1. function sorguDizesiDegeri(sd, aranan) {
  2. if (sd == "") return null;
  3. var sds = sd.substring(1).split("&");
  4. for (var i = 0; i < sds.length; i++) {
  5. var a = sds[i].split("=");
  6. if (a.length != 2) continue;
  7. if (a[0] == aranan)
  8. return decodeURIComponent(a[1]).replace(/\+/g, " ");
  9. }
  10. return null;
  11. }
  12.  
  13.  
  14. // Kullanımı
  15. console.log(document.location.search, "kayitNo");
  16.  
Eğer tüm değerleri bir JavaScript nesnesi olarak almak isterseniz şunu öneririm:
  1. function queryToObject(str) {
  2. return (str || document.location.search).replace(/(^\?)/, '').split("&").map(function (n) { return n = n.split("="), this[n[0]] = n[1], this }.bind({}))[0];
  3. }
Bu fonksiyon
  1. http://cevapsitesi.com/deneme.aspx?adi=ali&yasi=25
gibi bir adresle kullanıldığında
  1. {adi:"ali", yasi:"25"}
gibi bir sonuç alırsınız ve bunu da şu şekilde kullanabilirsiniz:
  1. var obj = querytoObject();
  2. console.log(obj.adi); // ali yazar.
  3. console.log(obj.yasi); // 25 yazar.


Cevaplayan: 07.04.16 16:52
cevapsitesi
102,040p 16ü
Cevabı seçen: 08.06.16 00:02
canora
101,387p 4ü

Bir cevap yazın: