java里面怎样使用js的变量

JavaScript038

java里面怎样使用js的变量,第1张

通过<%=java变量%>的方式赋值给js变量。

1、定义一个java变量

<% String a = "222"//定义一个string类型的java变量%>

2、输出给js

var k = <%=a%>输出变量值给k,这是的k是222

补充:

<% %>标识里面的是jsp代码,可以定义java变量<%=变量 %>输出java变量信息

在jsp中经常会遇到把js变量赋给java变量,或者将java变量赋给js变量的情况,在此将通用的处理方法小结如下:

java变量传给js好办,var a =""注意要将引号""加上;js变量给java稍微复杂点,一般是在表单中用一个

的隐藏表单元素,然后在脚本中将js变量值赋给它:

js代码:

var jsParamValue='aaaa'

form1.jsParam.value=jsParamValue

java代码:

request.getPrameter("jsPrama")

说明:在JSP中;Java部分是在服务器端执行的;js部分是在客户端的浏览器执行的;二者完全不相干。因此直接在JSP页面上是无法在js、java和HTML变量之间进行调用的。

变通(解决方案):将js变量放到form中的一个;在后台从form中取出变量放到隐藏域中;然后提交表单给要调用变量的页面。这个页面可以就是本身。示例如下:

bb.jsp页面:

<% String test5 = (String)request.getAttribute("test4")%>

<script type="text/javascript">

var test1 = '111'//定义js变量

document.form.test2.value = test1

//将js变量的值放到form中的一个隐藏域中

var formObj = document.getElementById('passForm')

formObj.submit()

</script>

<form method="post" action="aa.jsp" id ="passForm">

<input id = 'test2' type = 'hidden' name="test2">

</form>

aa.jsp页面中的Java代码:

<%

request.setCharacterEncoding("utf-8")

String txtMsg = request.getParameter("test2")

out.println(txtMsg)

%>

注:如果同一个页面自己给自己传值,aa.jsp和bb.jsp可以为同一页面。