两个HTML页面之间传值
需要用到js,代码如下:
getUrlParam.js
UrlParam = function() { // url参数 var data, index; (function init() { data = []; //值,如[["1","2"],["zhangsan"],["lisi"]] index = {}; //键:索引,如{a:0,b:1,c:2} var u = window.location.search.substr(1); if (u != '') { var params = decodeURIComponent(u).split('&'); for (var i = 0, len = params.length; i < len; i++) { if (params[i] != '') { var p = params[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 舍弃 continue; } 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() param : function(o) { // o: 参数名或者参数次序 try { return (typeof(o) == 'number' ? data[o][0] : data[index[o]][0]); } catch (e) { } }, //获得参数组, 类似request.getParameterValues() paramValues : function(o) { // o: 参数名或者参数次序 try { return (typeof(o) == 'number' ? data[o] : data[index[o]]); } catch (e) {} }, //是否含有paramName参数 hasParam : function(paramName) { return typeof(paramName) == 'string' ? typeof(index[paramName]) != 'undefined' : false; }, // 获得参数Map ,类似request.getParameterMap() paramMap : function() { var map = {}; try { for (var p in index) { map[p] = data[index[p]]; } } catch (e) {} return map; } } }();
a.html?name=bitch
在b.html引入这个js文件,然后
var name = UrlParam.param("name");
就可以获取到a.html传来的name值
如果有多个参数,就用 paramValues