2014-05-05 132 views
-4

我需要從以下網址抓取只值60408571:如何獲取查詢字符串值

http://www.domain.com/ProductDetail.aspx?ProductId=60408571&this-is-a-page-title-that-goes-here

到目前爲止,我已經成功地得以?ProductId=後搶的一切,但這個回報:

60408571&this-is-a-page-title-that-goes-here

目前我使用的JavaScript是:

if(window.location.href.indexOf("ProductId") > -1) { 
    s.prop14 = window.location.search.replace("?ProductId=", ""); 
} 

我只想抓取數值,如果用戶所在的頁面是url中的ProductId頁面。

謝謝你的幫助。

+0

一個簡單的搜索可能會有所幫助:[?我怎樣才能在JavaScript查詢字符串值(HTTP://計算器。 COM /問題/ 901115 /何燦I-得到的查詢字符串值,在JavaScript的?RQ = 1) – Tom

回答

0

謝謝湯姆。我修改了我的代碼,基於Tom提供的參考,現在我有:

function getParameterByName(name) { 
    name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
     results = regex.exec(location.search); 
    return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
} 

if(window.location.href.indexOf("ProductId") > -1) { 
    //s.prop14 = window.location.search.replace("?ProductId=", ""); 
    s.prop14 = getParameterByName('ProductId'); 
} 

很好用!再次感謝。

0

如果該URL不會改變,你也可以做到這一點的方法:

var productId = findProductId(window.location.query); 

function findProductId(url){ 
    return url.split('&')[0].split('=')[1]; 
}