2012-11-07 46 views
1

我想通過javascript獲取查詢字符串值。我正在使用這個功能。如果找不到查詢字符串,請修改javascript函數

var qs = (function (a) { 
if (a == "") return {}; 
var b = {}; 
for (var i = 0; i < a.length; ++i) { 
    var p = a[i].split('='); 
    if (p.length != 2) continue; 
    b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " ")); 

} 
return b; 
})(window.location.search.substr(1).split('&')); 

它運作良好。但是,如果URL中沒有查詢字符串值,那麼是錯誤。 我想修改它,如果它發現查詢值返回它。

如果沒有查詢字符串值,則返回單詞「自然」

你能幫助我嗎?

回答

2

在頂部,你可以寫:

if (a == "") return "Natural"; 

但是,這是很奇怪的,你會想這樣做。

+0

我已經厭倦了,但仍然返回「undefined」 –

+0

@MuhammadIqbal在這裏可以正常工作http://jsfiddle.net/zdRvL/ – Esailija

+0

我使用這種方式:我的網址是:www.example.com/index.html? keyword = abc我使用var keyword = qs [「keyword」]獲取正確的值「abc」;但是,如果url是www.example.com/index.html,那麼它不起作用。 –