zoukankan      html  css  js  c++  java
  • 两个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

  • 相关阅读:
    C# WPF开源控件库MaterialDesign介绍
    C# MQTT 服务端客户端通讯
    C#串口调试工具 (WPF/MVVM结构完整示例版)
    WPF转换器
    WPF动画基础及实例
    WPF MVVM架构 EF、WCF、IOC 设计示例经典
    SpringMVC中采用简洁的配置实现文件上传
    Maven 默认 SpringMVC-servlet.xml 基本配置
    maven pom.xml基本设置
    maven pom.xml设置jdk编译版本为1.8
  • 原文地址:https://www.cnblogs.com/caotao0918/p/11742165.html
Copyright © 2011-2022 走看看