js 获取URL参数乱码解决
地址 http://localhost:8080/uploadFile.html?contractNo="2018-塑-崇-0089"
方法一:构造一个含有目标参的的正则表达式对象
/*** 获取URL参数并解码返回* @param name* @returns*/
function getUrlParam2(name){ //构造一个含有 --(目标参数)--的正则表达式对象 var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); //匹配目标参数 var r = window.location.search.substr(1).match(reg);//返回参数值 if (r!=null) return decodeURI(r[2]); return null;
}//调用
var contractNo = getUrlParam2("contractNo");
alert(contractNo);
方法二:
JS 的方法 encodeURI 和 encodeURIComponent
它们都是编码URL,唯一区别就是编码的字符范围
encodeURI方法:不会对下列字符编码
ASCII字母、数字、~!@#$&*()=:/,;?+'
encodeURIComponent方法:
不会对下列字符编码
ASCII字母、数字、~!*()'
所以encodeURIComponent比encodeURI编码的范围更大。
举例子来说,encodeURIComponent会把 http:// 编码成 http%3A%2F%2F 而encodeURI却不会。
使用场景:
如果你需要编码整个URL,那么用encodeURI。
如果你需要编码URL中的参数的时候,那么使用encodeURIComponent是最好方法。
js 获取URL参数乱码解决相关推荐
- js 获取url参数问题
网上常常找到的js获取url参数的方法是: /** * @param {String} name 参数名称 * @param {String} url 请求的Url,可以填,如果不填为当 ...
- SQLAlchemy中模糊查询;JS中POST带参数跳转;JS获取url参数
SQLAlchemy中模糊查询,如何like多个关键字 JS中POST带参数跳转 一个项目中要跳转到另外一个项目,还需要带参数 考虑到安全性的问题,最好是用POST跳转,不能再URL中拼参 所以找到了 ...
- html js发送http请求数据格式,JS获取url参数,JS发送json格式的POST请求方法
一.获取url所有参数值 function US() { var name, value; var str = location.href; var num = str.indexOf("? ...
- js 获取url参数(函数封装)
本篇总结js获取url参数的几种方式,再最后,封装了一个函数,用来获取url中的参数. (一)关于获取url的一些基础知识 1, window.location.href 整个URl字符串(在浏览器中 ...
- 原生js获取URL参数
原生js获取URL参数 function getUrlParams(name) { // 不传name返回所有值,否则返回对应值var url = window.location.search;//s ...
- js获取url参数vue.js获取url参数 JQ获取url参数
在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 1.window.location.href(设置或获取整个 URL 为字符串) ...
- js获取 url 参数
js获取 url 参数 获取 url 中的参数 指定参数名称,返回该参数的值 或者 空字符串 不指定参数名称,返回全部的参数对象 或者 {} 如果存在多个同名参数,则返回数组 不支持URLSearch ...
- js获取url 参数方法封装
js获取url 参数方法封装 // 获取url 参数getUrlParam(params) {let url = location.href;url = url.replace("?&quo ...
- js 获取 url 参数 URLSearchParams
js 获取 url 参数 方法一 URLSearchParams 方法 // 创建一个URLSearchParams实例 const urlSearchParams = new URLSearchPa ...
最新文章
- 工作三年,我要如何提升Java技术 | 粉丝提问
- 融合变形三维插件想法
- 查看PLC IP 端口_三种方法实现以太网远程访问西门子PLC!
- percona-toolkit 之 【pt-table-checksum】、【pt-table-sync】说明
- ⼤海捞针 —— Scan
- 中科大 计算机网络3 网络边缘Edge
- 电脑上怎么做pdf文件_怎么合并PDF文件?PDF合并软件哪个好?
- Silverlight WCF RIA服务(二十九)Silverlight 客户端 10
- BZOJ4892:[TJOI2017]dna(hash)
- JetBrains DataGrip 2018.2.3中文破解版 含jar文件注册码激活教程(转)
- WPF开发之dll文件创建与调用
- 适配IE浏览器的那些坑
- java 指令发送短信_Java短信发送机的实现
- python如何控制鼠标键盘_Python控制鼠标键盘
- 过年了JAVA类编写烟花爆竹——学习分享下笔者的经验
- 视觉运控平台软件框架(6)---脚本编辑器Qsci
- python中demo函数是什么意思_Python函数(中)
- MOSFET和IGBT栅极驱动器电路的基本原理学习(2)
- 微秒, 纳秒,毫秒, 时间单位换算
- 发布一个记账软件---流水记账
热门文章
- 题解-ZeroJudge-c686 高斯符號
- Spring对象绑定与类型转换
- ansible动态inventory里的针对AWS中国的设置
- Android 控件
- js-this作用域
- 【误区】技术部经理vs技术经理 —— 一字之差谬以千里
- IT从业者几大职位薪酬对比
- ETH联合Meta和鲁汶大学 提出视频恢复算法VRT,在视频超分辨率、去模糊和去噪性能达到SOTA...
- 《ELF》即插即用!解决长尾问题!GTUIUC联合提出基于Early-Exiting的网络框架,涨点并加速!...
- 重读 CenterNet,一个在Github有5.2K星标的目标检测算法