我最近在学习java编程,写后端的时候,用到的语句:
map.put("page","1");
前端的时候想用freemarker,但是写成:
<br> function start(){<br> var a="${page!''}";<br> window.location.href="game"+a;<br> }<br>
的时候一直获取不到a的值,为什么,请诸位指点
1.后端参数没有传到前端
2.freemark引擎没有在配置文件配置或者错误
3.你这前端代码是啥直接${page}取完事
把后端代码都贴上来看一下
后台:
map.put("page","1");
request.setAttribute("map", map);
前台:
function start(){
var a='${map.page}';
window.location.href=''+a;
}
有没有配置Spring的FreeMarker视图解析
直接用el取值 ${request.map.page}
var a="${map.get('page')||''}";
window.location.href="game"+a;
不知道你学习java到什么程度了,是学过struts2框架了还是学过springMVC框架了,如果都学过了的话,你可以取看下我以前的回答: https://ask.csdn.net/questions/679338 和 https://ask.csdn.net/questions/687701 ;freemarker和JSP,取值都可以用ajax的方式取值
后端要return map到前端
你可以用ajax获取到后端传过来的值,或者用在前端直接获取
后端代码需将对应值render到前端回调函数,前端才可以得到并使用后端设置的值。希望能够帮到您。
存都没存,放到MAP里面了就放到request里面了。先把它存到request或response里面,之后前台el表达式解析,建议先学点基础的。
你试试**${map["page"]}**,相当于request.getAttribute("map").get("page");从request获得了名字为map的键值对,然后获取key为page的值