JS实现页面跳转参数不丢失的方法


Posted in Javascript onNovember 28, 2016

本文实例讲述了JS实现页面跳转参数不丢失的方法。分享给大家供大家参考,具体如下:

需求:页面编辑后,返回列表页面,参数不丢失,能够记住页数以及筛选条件。

我坚信,不管白猫黑猫,能捉到耗子的就是好猫,当然如果能够高效的,简单的处理最好。

我的思路就是,把列表页面地址作为参数传递过去。

这里就会面临一个问题,url本身就是由多个参数组成的,这样纯粹的传递,就会出问题,参数丢失。

所以要对url进行加密。

escape()、encodeURI()、encodeURIComponent()

JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。

escape()除了 ASCII 字母、数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法。而encodeURI() 用于编码整个URI,因为URI中的合法字符都不会被编码转换。encodeURIComponent方法在编码单个URIComponent(指请求参数)应当是最常用的,它可以将参数中的中文、特殊字符进行转义,而不会影响整个URL。

经过测试,发现encodeURIComponent方法可以很好的解决这个问题。

1.设置url

// 设置当前url
var list_url = '/document/order/default.php?page=' + page_nums + '&'+ $("#form1").serialize();
var e_list_url = encodeURIComponent(list_url);
$("#list_url").val(e_list_url);

2.传递url

var list_url = $('#list_url').val();
window.location.href='/document/order/view.php?order_id='+order_id+'&action=edit&handler=admin&list_url='+list_url;

3.解析url并跳转

var list_url = '<?php echo $list_url;?>';
d_list_url = decodeURIComponent(list_url);
window.location.href = d_list_url;

这样就能实现,参数不丢失了。主要就是页码和筛选条件。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
跟随鼠标旋转的文字
Nov 30 Javascript
为什么JavaScript没有块级作用域
May 22 Javascript
原生JS实现的放大镜效果实例代码
Oct 15 Javascript
Bootstrap 实现查询的完美方法
Oct 26 Javascript
jquery插入兄弟节点的操作方法
Dec 07 Javascript
vue组件 $children,$refs,$parent的使用详解
Jul 31 Javascript
JS正则表达式完美实现身份证校验功能
Oct 18 Javascript
JS遍历JSON数组及获取JSON数组长度操作示例【测试可用】
Dec 12 Javascript
微信小程序 高德地图路线规划实现过程详解
Aug 05 Javascript
Vue.js如何使用Socket.IO的示例代码
Sep 05 Javascript
Ant Design的可编辑Tree的实现操作
Oct 31 Javascript
JavaScript事件的委托(代理)的用法示例详解
Feb 18 Javascript
String字符串截取的四种方式总结
Nov 28 #Javascript
localStorage实现便签小程序
Nov 28 #Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 #Javascript
Jquery循环截取字符串的方法(多出的字符串处理成&quot;...&quot;)
Nov 28 #Javascript
基于iscroll.js实现下拉刷新和上拉加载效果
Nov 28 #Javascript
正则表达式,替换所有HTML标签的简单实例
Nov 28 #Javascript
基于slideout.js实现移动端侧边栏滑动特效
Nov 28 #Javascript
You might like
浅析php中如何在有限的内存中读取大文件
2013/07/02 PHP
Thinkphp模板中截取字符串函数简介
2014/06/17 PHP
PHP环境搭建(php+Apache+mysql)
2016/11/14 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
2007/03/10 Javascript
让IE8支持DOM 2(不用框架!)
2009/12/31 Javascript
JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解
2010/04/29 Javascript
js调用activeX获取u盘序列号的代码
2011/11/21 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
jquery 扑捉回车键事件代码
2014/04/24 Javascript
javascript获取本机操作系统类型的方法
2015/08/13 Javascript
Nodejs的express使用教程
2015/11/23 NodeJs
javascript精确统计网站访问量实例代码
2015/12/19 Javascript
基于javascript实现彩票随机数生成(简单版)
2020/04/17 Javascript
Nodejs中session的简单使用及通过session实现身份验证的方法
2016/02/04 NodeJs
30分钟快速掌握Bootstrap框架
2016/05/24 Javascript
jquery获取form表单input元素值的简单实例
2016/05/30 Javascript
JavaScript操作 url 中 search 部分方法函数
2016/06/15 Javascript
Vue开发中整合axios的文件整理
2017/04/29 Javascript
详解Angular2响应式表单
2017/06/14 Javascript
浅谈es6中export和export default的作用及区别
2018/02/07 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
jQuery选择器之基本选择器用法实例分析
2019/02/19 jQuery
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
如何在现代JavaScript中编写异步任务
2021/01/31 Javascript
python调用摄像头显示图像的实例
2018/08/03 Python
python OpenCV GrabCut使用实例解析
2019/11/11 Python
安装多个版本的TensorFlow的方法步骤
2020/04/21 Python
python 引用传递和值传递详解(实参,形参)
2020/06/05 Python
春季防火方案
2014/05/10 职场文书
老兵退伍标语
2014/10/07 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
逃课检讨书怎么写
2015/01/01 职场文书
兴趣班停课通知
2015/04/24 职场文书
返乡农民工证明
2015/06/24 职场文书
Go语言实现Snowflake雪花算法
2021/06/08 Golang
Android Flutter实现3D动画效果示例详解
2022/04/07 Java/Android