欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用js传递当前页面的url,丢失了&后面的参数 解决办法

程序员文章站 2022-06-16 23:44:22
问题:因为登陆是用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()函数处理一下就好了!