本文目录一览:
js中怎么获取java中的变量
js与java是不同语言,运行在不同环境下,因此无法直接获得对方数据。brjava运行在服务器端,在同一个jsp文件中,java先运行,js后运行,java可以生成一段js代码,保证js运行得到相应的结果,因此可以用java定义js变量的方式来传递数据,例如:brbr1br2br3br4brbrscriptbrvar url="%=url%";bralert(username);br/scriptbrbr上面例子,%%中的内容会在服务器端运行,在“”中间输出网址,浏览器就会加载下面的结果:brbr1br2br3br4brbrscriptbrvar url="gif8.cn";bralert(url);br/scriptbrbr这部分就是标准的js代码了。brbr 本回答由电脑网络分类达人 吕明推荐
如何在javascript中获取java变量值
说明:在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可以为同一页面。
怎么在js中取java变量的值,朋友们帮忙说说
function test(){
var g = "${first_Name}";
alert(g);
}
"%=first_Name%"; 这种方式只能取道jsp页面上定义的变量
比如
a.jsp:
%@ page contentType="text/html;charset=GB2312" %
HTML
%! String a = "aaaaa";%
BODY BGCOLOR=cyan
FONT Size=1
P这是一个简单的JSP页面
BR
/FONT
%=a %
${a };
/BODY
HTML
在跳转到该jsp页面的servlet中在request中设置了一个a
效果如下:
这是一个简单的JSP页面
aaaaa serveta;
原因很简单:
对于每个jsp,服务器(比如tomcat)都会将其转换成java文件(后缀.java的文件),然后将其编译成class文件
"%=%"就是从这个java文件中去取变量值
而"${}"则是从容器中的四个区域去取值(page,request,session,application)