jquery-logo

jQuery ile URL Parametre ve Değerlerini Çekin

Bir çoğumuz bir proje üstünde çalışırken PHP ile oluşturulmuş linklerdeki parametre ve değerleri çekmek isteriz. Bunun için Roshambo’nun snipplr’da paylaştığı JavaScript kodu işimizi görecektir.

function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

Bu fonksiyon URL parametreleriyle değerlerini bir dizi halinde getirir. Örneğin şu link için deneyelim: http://www.example.com/?me=myValue&name2=SomeOtherValue
getUrlVars() çağırdığımızda aşağıdaki diziye ulaşırız::

{
    "me"    : "myValue",
    "name2" : "SomeOtherValue"
}

İlk parametredeki değeri almak için aşağıki gibi çalıştırın fonksiyonu:

var first = getUrlVars()["me"];

// İkinci parametreyi almak içinse
var second = getUrlVars()["name2"];

Bu kodların jQuery için yoğurulmuş son halide aşağıdaki gibidir:

$.extend({
  getUrlVars: function(){
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
      hash = hashes[i].split('=');
      vars.push(hash[0]);
      vars[hash[0]] = hash[1];
    }
    return vars;
  },
  getUrlVar: function(name){
    return $.getUrlVars()[name];
  }
});

Yukarıdaki kodu javascript dosyanıza eklerseniz URL parametre ve değerlerini aşağıdaki gibi alabilirsiniz:

// URL Parametrelerini alalım
var allVars = $.getUrlVars();

// URL Parametre değerlerini alalım
var byName = $.getUrlVar('name');

Post Author: Oral ÜNAL

Web geliştirmeyi başta meslek olarak hayal eden fakat daha sonra bir hobi haline getiren birisiyim işte.

jQuery ile URL Parametre ve Değerlerini Çekin” için 3 yorum

  • kafein

    (05 Mart 2012 - 03:28)

    hocam benim yardıma ihtiyacım var. javascriptle başka sitelerden veri çekmek istiyorum php de yapılabiliyor fakat amacım js ile yapmak yardımcı olabilir misiniz?

  • Oral ÜNAL

    (05 Mart 2012 - 03:29)

    Javascript ile diğer sitelerden data çekmenize müsade edilmez. Ancak şöye bir yol izleyebilirsiniz. Yani site.php isimli bir dosya oluşturursunuz. Ve index.html sayfanızda jquery get’i şu şekilde kullanabilirsiniz:

    $.get(“site.php”, “site=trkodlama.com”, function(sonuc){ alert(sonuc); });

    Mantığı anlatabilmişimdir umarım. Yani site.php dosyası sizin yolladığınız site adresini için çekecek sizde o sayfayı almış olacaksınız ajax ile ;)

  • ömer küçük

    (17 Mayıs 2012 - 17:33)

    şeklinde bir yapı yapmak istiyorum bu konuda bilginiz var mı ?
    jquery dosyama querystring göndermek istiyorum..

Yorum yazma sırası sizde!