用js传递当前页面的url,丢失了&后面的参数 解决办法
程序员文章站
2022-03-20 22:06:10
问题:因为登陆是用ajax传值的,在哪个页面点击登陆的,登陆成功跳到再跳回那个页面,之前直接传递的是 解决方法: 用js的函数 返回值 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。 说明 该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进 ......
问题:因为登陆是用ajax传值的,在哪个页面点击登陆的,登陆成功跳到再跳回那个页面,之前直接传递的是
/index_do.php?gourl=" +location.href这样传递的,但是像http://nevjiawnn.com/plus/topics/topics_detail.php?tid=1&item=0&comm=1这样的连接,传过去之后就变成http://nevjiawnn.com/plus/topics/topics_detail.php?tid=1
解决方法:
用js的函数
encodeuricomponent(uristring) 函数可把字符串作为 uri 组件进行编码。
返回值
uristring 的副本,其中的某些字符将被十六进制的转义序列进行替换。
说明
该方法不会对 ascii 字母和数字进行编码,也不会对这些 ascii 标点符号进行编码: - _ . ! ~ * ' ( ) 。
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 uri 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
eg.
/index_do.php?gourl=" + encodeuricomponent(location.href)
用encodeuricomponent()函数处理一下就好了!
上一篇: 面向对象之:元类,反射, 双下方法
下一篇: QT5学习记录(一)