Skip to content

jQuery ile URL’deki Parametreleri Değerleri ile Birlikte Alma

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 adresi için 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');

Umarım faydalı olur, kolay gelsin,

TR Kodlama GitHub'da!

TR Kodlama'da yer alan makaleleri GitHub üzerinden düzenleyebileceğinizi biliyor muyudunuz? Harika değil mi? Bu makale ile ilgili düzenleme yapmak isterseniz aşağıdaki butona tıklayınız!

GitHub'da Görüntüle ve Düzenle!