Javascript 獲取地址欄里(URL)傳遞的參數


有時我們需要在js文件中用URL傳來的參數,但是Javascript是客戶端執行的腳本語言,而Session是服務器端的對象,我們不能直接取得Session中的值。那么,我們該如何在JS文件中獲取URL中的參數呢? 
下面介紹兩種方式,一種是字符串拆分法,另一種是正則匹配法。

 

第一種:字符串拆分法

這種方式是通過location.search方法取得URL中的參數部分,然后再進一步處理得到的。具體代碼如下:

[javascript] 

//獲取地址欄里(URL)傳遞的參數  

function GetRequest() {  

    //url例子:XXX.aspx?ID=" + ID + "&Name=" + Name;  

    var url = location.search; //獲取url中"?"符以及其后的字串  

    var theRequest = new Object();  

    if(url.indexOf("?") != -1)//url中存在問號,也就說有參數。  

    {   

      var str = url.substr(1);  

        strs = str.split("&");  

      for(var i = 0; i < strs.length; i ++)  

        {   

         theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);  

        }  

    }  

    return theRequest;  

}  

調用函數代碼:

[javascript]  

var Request = new Object();  

//獲取url中的參數  

Request = GetRequest();  

var ID, Name; //ID、名字  

  

ID = Request['ID']; //ID  

Name = Request['Name']; //名字  

 

第二種:正則匹配法

這種方法其實原理和上一種方法類似,都是從URL中提取,只是提取的方法不同而已。

[javascript]  

function GetQueryString(name) {  

    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");  

    var r = window.location.search.substr(1).match(reg);  

     

    if (r != null) {   

        return unescape(r[2]);  

    }  

    return null;  

}     

調用代碼:

[javascript]  

var ID;  

ID = GetQueryString("ID");  

 

以上就是Javascript中獲取URL中參數的兩種方法。

 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM