页面之间传递数据

最近在写公司HR微信公众号,其中某个模块需要A.html传递一个参数Data给B.html,然后B.html通过参数Data发送Ajax。整理一下搜寻到方法;

方法一:通过location给页面传递数据;附上代码。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <title>页面A</title>
</head>
<body>
    <div style="width:100px;height:100px;background: #f00;" onclick="dd('xyd')"></div>    
</body>
<script>
    function dd(elm){
        var GOUrl="GO.html?cs="+elm;
        location.href=GOUrl;
    }
</script>

</html>
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>页面B</title>
</head>
<body>
    <h1>一个有梦想的咸鸭蛋</h1>
</body>
<script>
    var locationUrl=location.href
    var shuju=window.location.href.split("=")[1];
    console.log(shuju);
</script>

</html>
方法二 正则 (原博主强烈推荐)

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <h1>一个有梦想的咸鸭蛋</h1>
</body>
<script>
function GetQueryString(name)
{
     var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
     var r = window.location.search.substr(1).match(reg);
     if(r!=null){
         return  unescape(r[2])
     }else{
         return null
     };
}
//    console.log(GetQueryString("参数名称1"));
//    console.log(GetQueryString("参数名称2"));
//    console.log(GetQueryString("参数名称3"));
//是否有参数
var myurl=GetQueryString("cs");
if(myurl !=null && myurl.toString().length>1)
{
    console.log(GetQueryString("cs"));
}
</script>

</html>
通过web缓存一样可以达到这样的效果,不确定这样是否可以,就不附上代码了

[原博主链接]

    原文作者:咸鸭蛋
    原文地址: https://segmentfault.com/a/1190000008916675
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞