2010-03-08 24 views
5

例如,我有這樣的網址:www.mysite.com/my_app.html如何通過url將參數傳遞給javascript並將其顯示在頁面上?

如何將值「Use_Id = abc」傳遞給它並使用javascript在該頁上顯示?

+0

那麼,你想顯示一個URL的所有參數(如果我沒有弄錯)? – 2010-03-08 22:48:19

+0

如果是這樣,看到我的答案它返回一個數組。從那裏你可以選擇你想要的。 – 2010-03-08 23:02:13

回答

11

不應該太難編寫你自己的,而不需要外部庫。

// www.mysite.com/my_app.html?Use_Id=abc 

var GET = {}; 
var query = window.location.search.substring(1).split("&"); 
for (var i = 0, max = query.length; i < max; i++) 
{ 
    if (query[i] === "") // check for trailing & with no param 
     continue; 

    var param = query[i].split("="); 
    GET[decodeURIComponent(param[0])] = decodeURIComponent(param[1] || ""); 
} 

用法:GET.Use_idGET["Use_id"]。您還可以使用"Use_id" in GET(將返回true或false)來檢查參數是否存在,即使它具有空值。

+0

你能解釋最後一行嗎? GET [decodeURIComponent(param [0])] = decodeURIComponent(param [1] ||「」); – nikhilvj 2016-01-11 10:21:49

0

www.mysite.com/my_app.html?use_id=abs

var qs = new QueryString() 

// use_id is now available in the use_id variable 
var use_id = qs.get("use_id"); 

獲取QueryString()代碼here

+0

,看起來像中文的404錯誤。 – 2013-06-10 12:57:51

+0

QueryString代碼可以在https://web.archive.org/web/20101025074108/http://adamv.com/dev/javascript/files/querystring.js – SESN 2017-02-04 18:53:39

1
www.mysite.com/my_app.html?Use_Id=abc 


var querystring = window.location.querystring; 
var myValue = querystring["Use_Id"]; 

更新:鏈接到庫(謝謝@Andy E),http://prettycode.org/2009/04/21/javascript-query-string/

+2

-1找到,這不是原生的,沒有提供與圖書館的鏈接。 – 2010-03-08 23:08:49

+0

- ( - 1)自添加了鏈接;-) – 2010-03-08 23:16:46

+1

找不到頁面..錯誤。 – 2013-06-10 12:57:03

5

調用頁面www.mysite.com/my_app.html?Use_Id=abc

然後在頁面中使用類似的JavaScript函數:

var urlParam = function(name, w){ 
    w = w || window; 
    var rx = new RegExp('[\&|\?]'+name+'=([^\&\#]+)'), 
     val = w.location.search.match(rx); 
    return !val ? '':val[1]; 
} 

要使用它:

var useId = urlParam('Use_Id'); 

第二個參數w是可選的,但如果有用的話您想要讀取iframe或父窗口上的參數。

+0

你的代碼非常有用!謝謝。如何在PHP中發佈方法? – 2017-11-26 13:13:47

+0

@ S.P.H.I.N.X當您向PHP頁面發佈帖子時,不再有客戶端javascript。 您需要在服務器上使用PHP進行解析,無論是發佈的數據還是像這裏一樣的url。 – Mic 2017-11-27 13:45:54

相關問題