jfinal 控制器setAttr 放入值,在前段html中如何取出值

比如  

setAttr()render()

在跳转到到wx1.html时,怎么取出这个值

评论区

你妹啊

2020-03-26 08:51

很急,求帮助。我没有引Enjoy,怎么把控制器setAttr 放入的值,在html中取出来

你妹啊

2020-03-26 09:15

刚试了一下,最新4.8版本,可以使用enjoy模板引擎,我用的3.3版本该怎么配置?

你妹啊

2020-03-26 09:40

很急,求帮助。谁能说一下,百度了很久了,没有解决

doubuxingle

2020-03-26 10:00

讲道理应该是一样的使用方法吧。

你妹啊

2020-03-26 10:01

我的是3.2版本,不能用啊

你妹啊

2020-03-26 10:03

@doubuxingle ${valus},和#()都试了,都传递不了,按Enjoy文档配置了,也没有查出来

lyh061619

2020-03-26 10:04

你用什么模板引擎?正常获取即可,Enjoy获取:#(xxx) /freemarker获取${xxx}

你妹啊

2020-03-26 10:08

控制器代码 setAttr("staffId","122222222222222");
render("/mobile/wx1.html");
前端 :
#(staffId)

你妹啊

2020-03-26 10:08

@lyh061619 就是这样做的,获取不到啊

lyh061619

2020-03-26 10:16

这个不好说,用#(staffId)加个安全符?? 变成#(staffId??),确定你的界面能正常显示先

lyh061619

2020-03-26 10:17

然后再看控制台是否有错误信息提示,然后再根据提示去调整。

lyh061619

2020-03-26 10:18

从你问题描述,猜出来有可能你的项目配置有问题。

你妹啊

2020-03-26 10:25

@lyh0应该是吧,我已经都是用jsp,现在用前端用html了,用enjoy传值穿不了

lyh061619

2020-03-26 10:30

先看下控制台打印什么错误信息,如果模板引擎没有配置对,会有错误提示,比如:找不到目录,再例如:然后就是界面原样输出也就是直接到模板语法给显示出业,这种情况就统称为配置错误。

你妹啊

2020-03-26 10:38

@lyh061619 我刚看了,没有报错,从控制器到页面跳转,页面上的#(staffId)还是输出的#(staffId) 字符串

lyh061619

2020-03-26 10:40

这种情况就是模板引擎没有配置,jfinal用多少版本的?

lyh061619

2020-03-26 10:44

把你地址栏访问地址贴出来,还有你的配置也一起贴出来,现在只是靠猜,这种问题,上面也已经讲得很清楚了,没有错误,模板语法原样输出,就是模板没有配置不信你直接在浏览器地址栏访问html静态页面也能打印出来来。

doubuxingle

2020-03-26 10:45

你版本从3.2改成4.8 其他什么都没动。 就可以?

lyh061619

2020-03-26 10:46

看官方文档说明升级说明:https://jfinal.com/doc/14-1

lyh061619

2020-03-26 11:28

建议你先把问题定位出来,然后再考虑是否要升级,如果还是无法定位问题,建议你直接下载官方最新demo下来运行,在上面进行开发或学习。

你妹啊

2020-03-26 12:01

@lyh061619 现在我用的3.3版本,应该已经有做过的项目了。所以不能直接升级。

zzjxfj

2020-03-26 13:44

有报错信息吗?有的话贴出来,没的话是不是页面原样输出的,是的话在你的Action里输出个log看是不是就没配置对,像这样都是粗心引起的

zzjxfj

2020-03-26 13:47

再者把模板页移走,看看会不会报找不找[路径]文件的错误

zzjxfj

2020-03-26 13:48

如果连这个都没有,你就得检查路由配置了

zzjxfj

2020-03-26 13:52

action里setAttr(key,value) 与 模版页的 #(key) 是对应的request.setattribute(key,value)与request.getattribute(key) 的操作