利用js進行頁面跳轉及傳遞引數的獲取
阿新 • • 發佈:2019-01-03
頁面A跳轉到頁面B及攜帶引數
window.location.href="../SystemInfoJsp/add_user.jsp?"+"id="+id+"&name="+name+"&grade="+grade;
解釋:
"../SystemInfoJsp/add_user.jsp?"這個為你要跳轉的頁面地址,後面追加引數的話要寫上?
"id="+id+"&name="+name+"&grade="+grade 這裡為你要傳到另外一個頁面的資料,是鍵值對的形式,多個值之間用&符號隔開
頁面B獲取A頁面跳轉傳遞過來的引數
$(function() { var loc = location.href;//獲取整個跳轉地址內容,其實就是你傳過來的整個地址字串 console.log("我的地址"+loc); var n1 = loc.length;//地址的總長 var n2 = loc.indexOf("?");//取得=號的位置 var parameter = decodeURI(loc.substr(n2+1, n1-n2));//擷取從?號後面的內容,也就是引數列表,因為傳過來的路徑是加了碼的,所以要解碼 var parameters = parameter.split("&");//從&處拆分,返回字串陣列 console.log("引數列表"+parameters); var paValue = new Array();//建立一個用於儲存具體值得陣列 for (var i = 0; i < parameters.length; i++) { console.log("引數鍵值對值"+i+":"+parameters[i]); var m1 = parameters[i].length;//獲得每個鍵值對的長度 var m2 = parameters[i].indexOf("=");//獲得每個鍵值對=號的位置 var value = parameters[i].substr(m2+1, m1-m2);//獲取每個鍵值對=號後面具體的值 paValue[i] = value; console.log("引數值"+i+":"+value); } console.log("具體引數陣列:"+paValue); });
要獲取到你傳過來的資料,可以通過陣列paValue[index]的方式獲取引數,比如上面我傳過來了id,name,grade三個引數,那麼paValue[0]就是id的值,paValue[1]就是name的值,paValue[2]就是grade的值。
注意:
因為這個paValue陣列寫在了$(function() { })裡面,所以要想獲得這個陣列的值,那麼你的程式碼就得繼續寫在這個$(function() { })裡面。不能再寫一個$(function() { }),在新寫的裡面去調這個陣列,如果要想在新的$(function() { })裡面或者是之前$(function() { })之外的方法中呼叫這個值,可以把var paValue = new Array();
var paValue = new Array();//建立一個用於儲存具體值得陣列 $(function() { var loc = location.href;//獲取整個跳轉地址內容,其實就是你傳過來的整個地址字串 console.log("我的地址"+loc); var n1 = loc.length;//地址的總長 var n2 = loc.indexOf("?");//取得=號的位置 var parameter = decodeURI(loc.substr(n2+1, n1-n2));//擷取從?號後面的內容,也就是引數列表,因為傳過來的路徑是加了碼的,所以要解碼 var parameters = parameter.split("&");//從&處拆分,返回字串陣列 console.log("引數列表"+parameters); for (var i = 0; i < parameters.length; i++) { console.log("引數鍵值對值"+i+":"+parameters[i]); var m1 = parameters[i].length;//獲得每個鍵值對的長度 var m2 = parameters[i].indexOf("=");//獲得每個鍵值對=號的位置 var value = parameters[i].substr(m2+1, m1-m2);//獲取每個鍵值對=號後面具體的值 paValue[i] = value; console.log("引數值"+i+":"+value); } console.log("具體引數陣列:"+paValue); });