本文实例讲述了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"#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"color: #0000ff">3.解析url并跳转

var list_url = '<"text-align: left; widows: 1; text-transform: none; background-color: rgb(254,254,242); text-indent: 0px; display: inline !important; font: 13px/17px Verdana, Arial, Helvetica, sans-serif; white-space: normal; float: none; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">这样就能实现,参数不丢失了。主要就是页码和筛选条件。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript编码操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》

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

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com