javascript之小积累-获取url传参的值
在项目中经常遇到两个页面传值的情况,我采取的方案是通过url后面加参数,也就是get方式传值。
这个方式的优点是:传值、获取很方便。
缺点是:1. 把参数都暴露在浏览器中了,一些敏感信息不建议这样传;
2. 要是有捣蛋的人把浏览器的地址后缀改改,那样参数就有可能被改了;
3. 每个浏览器都有个最大的长度限制,其中ie最少,为2048 字符。
好了,回归正题,当用get方式传值的时候,需要获取一些需要值,有两个方案,有一个是自己写的:
方案一:
function getQueryString (name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"),
r = window.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2]);
}
return '';
}
这个方案是用正则匹配name的值。
方案二:
function getUrlParam(name) {
var url = window.location.herf.search.split('?')[1],
arrs = url.split('&');
for(var i=0; i<arrs.length; i++) {
if(arrs[i].split('=')[0] === name) {
return arrs[i].split('=')[1];
}
}
return '';
}
这个方案是通过字符串分割,加上for循环实现。
总结:原理其实都是对url这个字符串里面的值进行匹配查找,都是对字符串的一些基本操作,所以学好基础,才能建造高楼大厦!
javascript之小积累-获取url传参的值的更多相关文章
- 获取url传参
function urlparameterforkey(name) { //读取html 数据 ); //待处理的字符串 var patt = new RegExp(name); //要查找的字符串 ...
- JS获取url传参
function GetRequest() { var url = location.search; //获取url中"?"符后的字串 var theRequest = new O ...
- html js获取URL传参
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code function GetQueryString(name) { var re ...
- [转]JS获取URL传参方法
function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...
- url传参后获取参数
当我们通过url传参跳转到其他页面,如: http://www.xxx.com/content.html?id=217&name=txf&phone=15829087165 在跳转后的 ...
- 关于url传参中文乱码问题
之前都一直很不了解中文编码得问题,之前在做项目中没碰到那么头痛的问题.所以一直没有了解中文乱码的问题. 问题描述: 地址: http://localhost:8080/sun-government/c ...
- Silverlight项目笔记8:层次布局、客户端读取shp、ExecuteCountAsync、柱状图、url传参
1.层次布局 由于地图窗口和菜单栏都在一个父容器内,在浏览器缩小到一定程度点击地图弹出infoWindow时,会出现菜单栏遮挡infoWindow中间部分的现象,于是通过设置Canvas.ZIndex ...
- js获取地址栏传参
地址:http://127.0.0.1:8082/prosperleedir/index.html?id=6666&name=prosper#prosper Location{ ...
- tornado 02 输出、输入和URL传参
tornado 02 输出.输入和URL传参 一.输出 write输出到页面 #write可以接受的对象 #write() 可以接受3种对象:bytes Unicode字符(二进制字符) 字典 #如果 ...
随机推荐
- css属性的书写
书写顺序: 注释方式: /* 块状注释文字 * 块状注释文字 * 块状注释文字 */ .m-list{width:500px;} .m-list li{height:20px;line-height: ...
- MINA2 框架详解(转)
Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP.UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务.虚拟机管道通信服务等),M ...
- vpn是什么?手机vpn是什么?
vpn是什么?手机vpn是什么? vpn是什么?手机vpn是什么? vpn是什么?手机vpn是什么?VPN全称是Virtual Private Network,也就是虚拟专用网的意思.很多人不知道VP ...
- wdcp 下apache模式开启https访问,支持多站点
1.vi conf/httpd.conf 查找 #Include conf/extra/httpd-ssl.conf (删除行首的配置语句注释符号"#"保存退出) 2.vi con ...
- Bootstrap<基础十一>字体图标(Glyphicons)
字体图标(Glyphicons),并通过一些实例了解它的使用.Bootstrap 捆绑了 200 多种字体格式的字形. 获取字体图标 我们已经在 环境安装 章节下载了 Bootstrap 3.x 版本 ...
- string类实现(C++)
class CMyString { friend std::ostream& operator<<( std::ostream& os, const CMyString&a ...
- C++小项目:directx11图形程序(七):modelclass
模型类是世界空间中的表示物体的类,那么他的所做的事就是加载模型,移动模型,渲染模型 modelclass.h #pragma once #include <d3d11.h> #includ ...
- .net 读取Excel文件报错
错误内容 Microsoft Office Excel 不能访问文件“D:\WWWRoot\Website\Test\Excels\Test1.xls”. 可能的原因有: 1 文件名称或路径不存在. ...
- 3D图形图像处理软件HOOPS介绍及下载
HOOPS 3D Application Framework(以下简称HOOPS)是建立在OpenGL.Direct3D等图形编程接口之上的更高级别的应用程序框架.不仅为您提供强大的图形功能,还内嵌了 ...
- 搭建Android开发环境。
1. 从 http://developer.android.com/intl/zh-cn/sdk/index.html 下载ADK 2. 点击SDK.Manager.exe, 遇到闪退的问题,一开始还 ...