怎么在jsp页面中获取js的变量值

JavaScript013

怎么在jsp页面中获取js的变量值,第1张

jsp是无法直接或取页面中js变量的值,但是可以通过间接的方法,用html的方法

例如:

<input

id="data"

type="hidden"

value="你想要的数据"

/>

在html里定义一个上面的标签,把js的值放到标签里,然后jsp去获得这个值

Java的变量值,理论上在js中是不能获取,但是可以通过间接的方式来获取。

提供两种思路供参考:

1、把java变量的值存在cookie中,js通过cookie去取;

function getCookie(name)

{

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

if(arr=document.cookie.match(reg))

return unescape(arr[2])

else

return null

}

var value= getCookie("cookie的name名")

2、把java变量的值赋值给页面中<input type="hidden"/>的value,通过js去取;

var value=document.getElementById("hidden的ID").value

jsp在页面上获取java参数总共有以下方法:

(1)直接在URL请求后添加

如:<a href="thexuan.jsp?action=transparams&detail=directe")直接传递参数, 特别的在使用response.sendRedirect做页面转向的时候,也可以用如下代码: response.sendRedirect("thexuan.jsp?action=transparams&detail=directe") ,可用request.getParameter(name)取得参数

(2)jsp:param

它可以实现主页面向包含页面传递参数,如下:

<jsp:include page="Relative URL">

<jsp:param name="param name" value="paramvalue" />

</jsp:include>

还可以实现在使用jsp:forward动作做页面跳转时传递参数,如下:

<jsp:forward page="Relative URL">

<jsp:param name="paramname" value="paramvalue" />

</jsp:forward>通过这种方式和一般的表单参数一样的,也可以通过request.getParameter(name)取得参数

(3)设置session和request

通过显示的把参数放置到session和request中,以达到传递参数的目的

session.setAttribute(name,value)

request.setAttribute(name,value)

取参数:value=(value className)session.getAttribute(name)

value=(value className)request.getAttribute(name)