跨域时,使用url传递数据,并取值。

很多时候,我们经常会遇到跨域的情况,比如A.html的数据想在B.html里运用。

那么,我们可以通过url传递数据的方式来实现:

比如我在A.html页面的数据:codeId=2  userName=lee  checkName=kay想通过url传递给B.html页面

那么,我们在B.html页面的url就可以这样B.html?codeId=2&userName=lee&checkName=kay

注意,这里需要用“&”去连接多个数据。

然后,我们就可以在B.html页面去取值操作了。

 1 function transferUrlQueryVariables() {
 2     var search = window.location.search,
 3         query,
 4         vars,
 5         varMap = {};
 6
 7     if (!search || search.length < 2) {
 8         return varMap;
 9     }
10
11     query = search.substring(1);
12     vars = query.split(‘&‘);
13
14     for (var i = 0, pair, length = vars.length; i < length; i++) {
15         pair = vars[i].split(‘=‘);
16         varMap[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);
17     }
18
19     return varMap;
20 }

这样,对于跨域取值也是没问题的了。

时间: 2024-10-11 10:23:58

跨域时,使用url传递数据,并取值。的相关文章

Ajax 跨域请求 jsonp获取json数据

遇到Ajax的跨域请求出问题 找了中解决办法如下: 参考内容:http://justcoding.iteye.com/blog/1366102 由于受到浏览器的限制,该方法不允许跨域通信.如果尝试从不同的域请求数据,会出现安全错误.如果能控制数 据驻留的远程服务器并且每个请求都前往同一域,就可以避免这些安全错误.但是,如果仅停留在自己的服务器上,Web 应用程序还有什么用处呢?如果需要从多个第三方服务器收集数据时,又该怎么办? 理解同源策略 同源策略阻止从一个域上加载的脚本获取或操作另一个域上的

ajax跨域往php程序post数据时,php程序总是执行两次的解决方法

php程序是部署在IIS7上面,ajax提交数据时,遇到了两个问题,一个就是跨域,一个php程序总会被执行两次. 第一个问题的解决方法,是百度出来的,添加下面几行代码就可以了: header('Access-Control-Allow-Origin:*'); header("Access-Control-Allow-Headers: x-requested-with,content-type"); header('Access-Control-Allow-Methods: OPTION

通过Iframe在A网站页面内嵌入空白页面的方式,跨域获取B网站的数据返回给A网站!

以下代码只是为演示该方法具体是如何操作的,实际的意义并不大. 其实这个方法还可以解决很多方面的跨域操作,以下两点为我工作中遇到的情况! 比如A系统中打开B系统页面的时候,获取B系统页面高度,A系统中可以动态设置窗口的高度 还有A系统中打开B系统页面的时候,B系统页面进行一系列操作,操作成功后需关闭A系统窗口,就可以在操作成功后再在B系统中嵌入A系统的blank.html页面,blank.html页面打开的时候,动态关闭A系统的窗口! 下面为大家讲下是如何实现该方法的 1.在A系统下添加名称为bl

利用Jsonp跨域大发888搭建请求数据(原生和Jquery的ajax请求),简单易懂!

前言 :本文示例部署大发888搭建QQ2952777280[] hxforum.com 在XAMPP建站集成软件包上,在localhost环境下进行测试 1.什么是跨域 由于浏览器同源策略,凡是发送请求url的协议.域名.端口三者之间任意一与当前页面地址不同即为跨域.存在跨域的情况 :(1)网络协议不同,如http协议访问https协议. (2)端口不同,如8080端口访问3000端口. (3)域名不同,如aaaa.com访问bbbb.com. (4)子域名不同,如java.ddd.com访问q

当跨域时,js ajax 请求出现options请求

上面有文章说过http的options. 查了很久.试了很多版本的jQuery,下面这段代码在同事的机子上测试是没有问题的.正常 的请求, 一在我机子上面就会出现option,网上说先向服务器预检等.为什么在同事的机子上面是正常的呢..最后查出原因.是我在html页面还引入了一个全局的js文件,里面有一个全局配置crossDomain:false,于是我在ajax请求是加上crossDomain:true,就OK了..让其请求是跨域请求. postdata:function(t,i){ var

跨域cors中如何传递cookie(前端为什么无法向后端传递cookie?)

没有跨域 后端server只要在回应头部'set-cookie',那么就会有cookie产生并保存在客户端client. 等到client再次向后端server发送请求时浏览器的机制就会自动携带cookie随着请求一并发送给后端. 跨域 浏览器默认情况下无法主动跨域向后端发送cookie, 如果你要发送cookie给server的话, 就需要将withCredentials设置为true了. ;但是,server并不是随便就能接受并返回新的cookie给你的. 在server端,还需要设置. A

http跨域时的options请求

1.背景 在前后端分离的项目中经常会遇到跨域请求的问题,如果没有进行跨域配置,会浏览器请求失败.我一般采用两种解决方案: 1.采用nginx进行转发,是前后端服务处于同一个域下面,从根本上避免跨域问题. 2.后端服务做一些配置,允许请求跨域,从而解决浏览器跨域问题.但是有时候浏览器还会发送OPTIONS请求. 2.跨域请求 跨域请求的介绍,以及处理方式可以看https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS,说的非常详细 简单说就是,浏览

跨应用启动Service并传递数据

启动: 在Android5.0之前可以通过隐式intent启动服务,但是Android5.0之后不可以了. 在两个Application之间是不可能获取到Service的定义的,需要调用SetComponent函数: serviceIntent = new Intent(); serviceIntent.setComponent(new ComponentName("com.wanxiang.www.startservicefromanotherapp", "com.wanx

c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数据类型, 还有BOO数据类型, 以及一些其它的数据类型, 如自定义的结构体数据类型 BOOL数据类型是一种表示非真即假的数据类型, 布尔类型的变量只有YES和NO两个值. YES表示表达式结构为真, 反之, NO表示表达式结果为假(在c语言中, 认为非0即为真), BOOL类型主要用与分支结构或循环