本文實例講述了靜態頁面html中跳轉傳值的JS處理技巧。分享給大家供大家參考,具體如下:
在html中通過"?"傳值:
<a href="index2.html?name=caoy">靜態傳值</a>
在跳轉到的頁面index2.html中接收:
var name=UrlParm.parm("name");
代碼如下:
index.html:
<script type="text/javascript" src="getUrlParam.js"></script> <a href="index2.html?name=caoy">靜態傳值</a>
index2.html:
<script type="text/javascript"> var name=UrlParm.parm("name"); alert(name); </script>
getUrlParam.js:
UrlParm = function() { // url參數 var data, index; (function init() { data = []; index = {}; var u = window.location.search.substr(1); if (u != '') { var parms = decodeURIComponent(u).split('&'); for (var i = 0, len = parms.length; i < len; i++) { if (parms[i] != '') { var p = parms[i].split("="); if (p.length == 1 || (p.length == 2 && p[1] == '')) {// p | p= data.push(['']); index[p[0]] = data.length - 1; } else if (typeof(p[0]) == 'undefined' || p[0] == '') { // =c | = data[0] = [p[1]]; } else if (typeof(index[p[0]]) == 'undefined') { // c=aaa data.push([p[1]]); index[p[0]] = data.length - 1; } else {// c=aaa data[index[p[0]]].push(p[1]); } } } } })(); return { // 獲得參數,類似request.getParameter() parm : function(o) { // o: 參數名或者參數次序 try { return (typeof(o) == 'number' ? data[o][0] : data[index[o]][0]); } catch (e) { } }, //獲得參數組, 類似request.getParameterValues() parmValues : function(o) { // o: 參數名或者參數次序 try { return (typeof(o) == 'number' ? data[o] : data[index[o]]); } catch (e) {} }, //是否含有parmName參數 hasParm : function(parmName) { return typeof(parmName) == 'string' ? typeof(index[parmName]) != 'undefined' : false; }, // 獲得參數Map ,類似request.getParameterMap() parmMap : function() { var map = {}; try { for (var p in index) { map[p] = data[index[p]]; } } catch (e) {} return map; } } }();
這樣就能通過html跳轉傳值了
更多關於JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。