页面之间传递数据

最近在写公司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缓存一样可以达到这样的效果,不确定这样是否可以,就不附上代码了

[原博主链接]

本文转载于:猿2048?https://www.mk2048.com/blog/blog.php?id=hha0j2j0h0j

原文地址:https://www.cnblogs.com/homehtml/p/12521073.html

时间: 2024-10-26 20:56:50

页面之间传递数据的相关文章

前端页面之间传递数据

在前端多页面开发过程中,会经常在页面与页面中间跳转,在跳转过程中,总有些数据是要传递的,当然我们可以用locationStorage 对象来存储,也可以自己生成对象,下挂window对象来传递,这些本次暂不讨论. 我们讨论用URL来传递数据的情况: 假设A页面要跳转到B页面,这个过程中要传递一个简单的JSON对象类型: Student={name:"wsp",age:"24"} 浏览器时不支持传递Object对象的,只支持String 类型的数据,故我们要对这个JS

IOS开发笔记(2)页面之间传递数据几种方式比较

今天分享一下页面之间传值的几种方式 1.@property属性 这个不用多说了吧,当页面A 跳转到页面B,在class B中声明属性 @property (nonatomic, copy) NSString *name; 初始化B FirstViewController *firstVC = [FirstViewController new]; firstVC.name = @"name"; [self presentViewController:firstVC animated:YE

ios 页面跳转之间传递数据----通过delegate

主要参考了这篇博客http://mobile.51cto.com/iphone-284116.htm 主要用到了,两个类,一个delegate a类,调用b类,当b类执行之后,需要把一个数据传递给a类,a类把这个数据显示出来. 1.delegate,就这一个头文件就足够了.在类中去实现这个代理方法 #import <Foundation/Foundation.h> @protocolUIViewPassValueDelegate - (void)passValue:(NSString*)val

HTML5中window.postMessage,在两个页面之间的数据传递

HTML5中window.postMessage,在两个页面之间的数据传递 2015年11月3日 8536次浏览 关于postMessage window.postMessage虽然说是html5的功能,但是支持IE8+,假如你的网站不需要支持IE6和IE7,那么可以使用window.postMessage.关于window.postMessage,很多朋友说他可以支持跨域,不错,window.postMessage是客户端和客户端直接的数据传递,既可以跨域传递,也可以同域传递. 应用场景 我只

ASP.NET页面之间传递值的几种方式

页面传值是学习asp.net初期都会面临的一个问题,总的来说有页面传值.存储对象传值.ajax.类.model.表单等.但是一般来说,常用的较简单有QueryString,Session,Cookies,Application,Server.Transfer 一.QueryString QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法.但是对于传递数组或对象的话,就不能用这个方法了.

Android页面之间进行数据回传

Android页面之间进行数据回传 要求:页面1跳转到页面2,页面2再返回页面1同时返回数据 页面1添加如下代码: Intent intent = new Intent(); intent.setClass(页面1.this, 页面2.class); Bundle bundle = new Bundle(); intent.putExtras(bundle);//将Bundle添加到Intent,也可以在Bundle中添加相应数据传递给下个页面,例如:bundle.putString("abc&

ASP.NET页面之间传递值(4):Server.Transfer

这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效. Server.Transfer是从当前的ASPX页面转到新的ASPX页面,服务器端执行新页并输出,在新页面中通过 Context.Handler来获得前一个页面传递的各种数据类型的值.表单数据.QueryString.由于重定向完全在服务器端完成,所以客户端 浏览器中的URL地址是不会改变的.调用Server

ASP.NET页面之间传递值(2):Session

想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽. 优点:1.使用简单,不仅能传递简单数据类型,还能传递对象. 2.数据量大小是不限制的. 缺点:1.在Session变量存储大量的数据会消耗较多的服务器资源. 2.容易丢失. 使用方法:1.在源页面的代码中创建你需要传递的名称和值构造Session变量:Session["Name"]="Value(Or Object)"; 2.在目

ASP.NET页面之间传递值(5):Application

Application对象的作用范围是整个全局,也就是说对所有用户都有效.它在整个应用程序生命周期中都是有效的,类似于使用全局变量一样,所 以可以在不同页面中对它进行存取.它和Session变量的区别在于,前者是所有的用户共用的全局变量,后者是各个用户独有的全局变量. 可能有人会问,既然所有用户都可以使用application变量,那他可以用在什么场合呢?这里举个例子:网站访问数.多个请求访问时都可以对它进行操作. 优点:1.使用简单,消耗较少的服务器资源. 2.不仅能传递简单数据,还能传递对象