jsp页面或者JS中接收url参数的方法

JavaScript05

jsp页面或者JS中接收url参数的方法,第1张

假如有这么一个请求: http://localhost:8080/appWeb/text/hello.jsp?name=join

在jsp页面接收url参数,可以使用这样的方法:

在jsp中可以这样使用:<body>hi,<%=name%></body>

注:<%=name%>不能防御XSS攻击

当然也可以在<body>中使用 ${param.name} 方法来获得,这里的param 是隐含对象,相当于reques.getParameter()方法。如:

此时如果url参数包含中文的话就需要进行转码操作,如下:

英文不需要转码操作,但是建议始终进行转码操作,这样处理起来会方便很多。

以下函数可以获取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。