怎么在js中取java变量的值
2016-08-05 17:23
507 查看
1、定义一个java变量
<% String a = "222";//定义一个string类型的java变量 %>
2、输出给js
var k = <%=a%>;输出变量值给k,这是的k是222
补充:
<% %> 标识里面的是jsp代码,可以定义java变量
<%=变量 %> 输出java变量信息
1。js变量获取jsp页面中java代码的变量值。
方法:var JS变量名 = <%=JAVA变量名 %>
我们常常会将js文件和jsp文件分开写,在js文件中,上面的方法似乎不管用了。
也可以通过变通的方法来解决:
a.jsp <% String name = "zhangsan" %> <input type=”hidden“ name=“a” id="a" value="<%=name%>"
aa.js
var n = document.getElementById('a').value;使用jquery这样做也更方便
2。java代码获取js变量的值。
说明:在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可以为同一页面。
相关文章推荐
- Java 集合:Map 系列(HashMap,HashTable)
- Java---多线程(1)
- Java 多线程:Lock 关键字
- java中的垃圾回收
- java Scanner用法
- Java 多线程:分析线程池的实现原理
- Java JDBC 之 URL 与数据库连接
- Java 多线程:生产者消费者模型
- Java 多线程:synchronized 多线程同步关键字
- Java 多线程:AtomicInteger源码分析——基于CAS的乐观锁实现
- 用 Eclipse 插件提高JAVA 代码质量
- Java 多线程:Condition 多线程同步关键字
- java学习总结
- java 内部类使用
- Struts2 拦截器(Interceptor )原理和配置
- 关于spring、pringmvc整合时注解扫描
- Myeclipse 设置背景样式
- Java代码后台使用dip值设置width,heigth等
- java log4j日志教程
- java 基础知识