javascript中怎么获取请求的参数?

JavaScript011

javascript中怎么获取请求的参数?,第1张

通过使用window.location.search可以获取到当前URL的?号开始的字符串,如前面的链接获取到的search为?id=001,再对获取的字符串进行处理,就可以获取到参数的值了,参考代码如下:

<SPAN style="FONT-SIZE: 14px">function getUrlParam(name) {

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)")

var r = window.location.search.substr(1).match(reg)

if (r != null)

return unescape(r[2])

return null

}

</SPAN>

在调用上面的方法的时候,只要传入参数的名称,就可以获取到想要的参数的值了,如:getUrlParam("id")。

这个获取参数的方法有多种,比如:url 传值(a.html?id=1),

窗体传值:

a.html:

function doopen(){

//打开一个子窗体

var aa = window.showModalDialog("b.html","可以传到子窗口的一个值","dialogHeight=200pxdialogWidth=300px")

//接收子窗体传过来的值

document.getElementById('temp').value = aa

}

b.html:

//获取父窗体传过来的值

var aa = window.dialogArguments

alert(aa)

function doClose(obj){

//返回值给父窗体

window.returnValue = obj.innerHTML

//关闭本窗体

window.close()

或者,把值写到文档中。。。不考虑其他的,传值的方法有很多种

以下函数可以获取url任意参数的值:

function getParams(key){

    var url = location.search.replace(/^\?/,'').split('&')

    var paramsObj = {}

    for(var i = 0, iLen = url.length i < iLen i++){

        var param = url[i].split('=')

        paramsObj[param[0]] = param[1]

    }

    if(key){

        return paramsObj[key] || ''

    }

    return paramsObj

}

可选参数key表示获取参数的名称,如果省略该参数,则会返回一个对象,包含所有参数的key和value。