Yang benar-benar Anda inginkan adalah plugin Parser URL jQuery . Dengan plugin ini, mendapatkan nilai parameter URL tertentu (untuk URL saat ini) terlihat seperti ini:
$.url().param('foo');
Jika Anda menginginkan objek dengan nama parameter sebagai kunci dan nilai parameter sebagai nilai, Anda hanya perlu memanggil param()
tanpa argumen, seperti ini:
$.url().param();
Perpustakaan ini juga berfungsi dengan url lain, bukan hanya yang saat ini:
$.url('http://allmarkedup.com?sky=blue&grass=green').param();
$('#myElement').url().param(); // works with elements that have 'src', 'href' or 'action' attributes
Karena ini adalah seluruh parsing pustaka URL, Anda juga bisa mendapatkan informasi lain dari URL, seperti port yang ditentukan, atau path, protokol, dll:
var url = $.url('http://allmarkedup.com/folder/dir/index.html?item=value');
url.attr('protocol'); // returns 'http'
url.attr('path'); // returns '/folder/dir/index.html'
Ini memiliki fitur lain juga, periksa beranda untuk lebih banyak dokumen dan contoh.
Alih-alih menulis parser URI Anda sendiri untuk tujuan khusus ini yang agak berfungsi dalam kebanyakan kasus, gunakan parser URI yang sebenarnya. Bergantung pada jawabannya, kode dari jawaban lain dapat kembali 'null'
sebagai ganti null
, tidak berfungsi dengan parameter kosong ( ?foo=&bar=x
), tidak dapat menguraikan dan mengembalikan semua parameter sekaligus, mengulangi pekerjaan jika Anda berulang kali meminta URL untuk parameter dll.
Gunakan parser URI yang sebenarnya, jangan buat parser Anda sendiri.
Bagi mereka yang menolak jQuery, ada versi plugin yang murni JS .