页面跳转参数不丢失

简介:

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

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

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

这里就会面临一个问题,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;

 

 

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


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/4964468.html,如需转载请自行联系原作者

相关文章
|
7月前
|
存储 前端开发 数据库
Vuex数据刷新丢失如何处理
Vuex数据刷新丢失如何处理
75 4
|
6月前
vue3 在 watchEffect 里中断未完成的 axios 请求(只保留最后一次请求的方法---连续点击查询按钮的优化)
vue3 在 watchEffect 里中断未完成的 axios 请求(只保留最后一次请求的方法---连续点击查询按钮的优化)
153 0
|
6月前
|
JavaScript
vue 数据变化触发页面响应的三种方式(解决:数据变化页面无响应/不刷新的问题)【含原理】
vue 数据变化触发页面响应的三种方式(解决:数据变化页面无响应/不刷新的问题)【含原理】
390 0
|
8月前
|
存储 缓存 JavaScript
vue中缓存页面数据(刷新不丢失)
vue中缓存页面数据(刷新不丢失)
566 1
|
8月前
如何解决由引起的IQKeyboardManager部分页面返回的键盘高度比实际小或最后收到键盘隐藏通知却显示了键盘问题
如何解决由引起的IQKeyboardManager部分页面返回的键盘高度比实际小或最后收到键盘隐藏通知却显示了键盘问题
129 0
|
8月前
|
移动开发 小程序 JavaScript
mPaas 问题之参数收不到如何解决
mPaaS小程序是阿里巴巴移动平台服务(mPaaS)推出的一种轻量级应用解决方案,旨在帮助开发者快速构建跨平台的小程序应用;本合集将聚焦mPaaS小程序的开发流程、技术架构和最佳实践,以及如何解决开发中遇到的问题,从而助力开发者高效打造和维护小程序应用。
|
移动开发
微信h5扫码接口范例:多个扫码框支持的办法,通过引入一个参数来区分及使用localStorage保证之前扫到的数据不丢失
微信h5扫码接口范例:多个扫码框支持的办法,通过引入一个参数来区分及使用localStorage保证之前扫到的数据不丢失
129 0
|
微服务
微信授权回调时,回调地址中原有参数丢失
微信授权回调时,回调地址中原有参数丢失
728 0
微信授权回调时,回调地址中原有参数丢失
|
前端开发
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
111 0
使用SpringMvc跨服务器上传图片,Ajax异步刷新图片框显示图片功能请求不到后台,onChange事件没有激活的源码?
|
JavaScript 前端开发
自动提交表单的实现方法
可以解决采集需要自动提交的问题!   方法一:   Untitled Document (1)自动提交表单:    setTimeout("document.form1.submit()",10000)                      10秒后提交。
2514 0