在同一jsp中,写了个js
first_Name是java变量
function test(){
var g = "<%=first_Name%>";
alert(g);
}
为什么这样取不到值啊?应该怎么做呢?
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)
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)
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2018-02-28
你这个取法没有问题,请确认一下
1、first_Name这个java变量是否为null
2、test()这个函数是否被调用本回答被提问者和网友采纳
1、first_Name这个java变量是否为null
2、test()这个函数是否被调用本回答被提问者和网友采纳
第2个回答 2008-06-23
用个隐藏域得到first_Name这个java变量的值,然后再用document.form.getElementByid()就在js中得到了first_Name的值然后再把改变后的值赋给这个隐藏域
第3个回答 2008-06-23
不知道你的first_Name这个变量有没有先啊
如果getAttribute(“XXX”)没有东西的话,
看看Java类里setAttribute(“XXX”,XXX)
如果getAttribute(“XXX”)没有东西的话,
看看Java类里setAttribute(“XXX”,XXX)
第4个回答 推荐于2016-08-14
通过<%=java变量%>的方式赋值给js变量。
1、定义一个java变量
<%String a = "222";//定义一个string类型的java变量
%>
2、输出给js
补充:
<% %> 标识里面的是jsp代码,可以定义java变量
<%=变量 %> 输出java变量信息