如何用JS获取连接url中的相关参数

JavaScript016

如何用JS获取连接url中的相关参数,第1张

使用split切分法

function GetRequest() {

var url = location.search //获取url中"?"符后的字串

var theRequest = new Object()

if (url.indexOf("?") != -1) {

var str = url.substr(1)

strs = str.split("&")

for (var i = 0 i < strs.length i++) {

theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1])

}

}

return theRequest

}

你这个不是很正确。用下面这个function getArgs( ) {

var args = new Object( )

var query = location.search.substring(1)// 获取?后面所有参数

var pairs = query.split("&")// 分割for(var i = 0i <pairs.lengthi++) {

var pos = pairs[i].indexOf('=') // 查找类似与"name=value"

if (pos == -1) continue // 没找到

var argname = pairs[i].substring(0,pos) // 取得参数名(如name)

var value = pairs[i].substring(pos+1) // 取得值name参数的值

value = decodeURIComponent(value) // 这个是反编码如果传递的是中文并且htmlencode了就要decode一下args[argname] = value // 赋值}

return args // 返回参数集合

}

复制代码

代码如下:

var

url

=

location.href

//获取keyword的参数值

var

es=/keyword=/

es.exec(url)

var

result=RegExp.rightContext

例如:

复制代码

代码如下:

var

url

=

location.href

//获取pid的参数值

var

es=/pid=/

es.exec(url)

var

pid=RegExp.rightContext

var

aurl

=

"&pid="+pid

复制代码

代码如下:

alert(pid)//结果:&pid=37