JS怎么获取JSP中Java的变量值

<html><head><title></title><scripttype="text/javascript">vars=<%=monSum%>;//这样获取不到值啊<... <html>
<head>
<title></title>
<script type="text/javascript">
var s = <%=monSum%>;
//这样获取不到值啊
</script>
</head>
<body>
<%
int n = 1;
String url = "jdbc:mysql://localhost/personal";
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url,"root","123");
Statement stmt = null;

double[] monSum = new double[12];
ResultSet rs = null;
String time_year = (new SimpleDateFormat("yyyy")).format(new Date());
String time = "";
try{
while(n++<=12){
if(n<10){
time = time_year + "-0" + n;
}else{
time = time_year + "-" + n;
}
String sql = "select * from record where date like'"+time+"%'";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
while(rs.next()){
monSum[n] = monSum[n] + Double.parseDouble(rs.getString("cost"));
}
rs.close();
stmt.close();
}
}catch(SQLException e){
out.println(e.getMessage());
}
%>
</html>
展开
 我来答
辉色的sky
2015-06-26 · TA获得超过2254个赞
知道小有建树答主
回答量:1177
采纳率:75%
帮助的人:296万
展开全部

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;
张仔鸿
2014-04-29
知道答主
回答量:20
采纳率:0%
帮助的人:11.8万
展开全部
<%=expression%>只会打印出expression的toString值,你这个monSum是个double[]的数组,应该使用

var s = <%=Arrays.toString(monSum) %>
追问
依旧不行啊!monSum那儿还是报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loppp520
2014-04-29 · TA获得超过205个赞
知道小有建树答主
回答量:407
采纳率:0%
帮助的人:248万
展开全部
在java中这样写:request.setAttribute("monSum", monSum);
在js中获取:${monSum};
你这样试试看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿刚炖蛋
2014-04-29 · TA获得超过3004个赞
知道大有可为答主
回答量:1789
采纳率:92%
帮助的人:967万
展开全部
早上好!!

你的script脚本放在 java代码的下面试试···
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式