CNode

弱弱的问一下,EJS模板中,js如何获取后端传来的数据??

问答
Hhsh075623201发布于12 年前最后回复8 年前26 回复34810 浏览0 收藏

例如: 后端:res.render("demo",{"params":params}) EJS模板的js部分,如何获取这个params呢??

查看回复

回复 (26)

L
linghao2014#1·10 年前
引用 hsh075623201@jx zhou 已解决 少了引号

@hsh075623201 有没有试过for循环,我使用for循环遇到了个奇怪的问题

L
LiuYJia#3·8 年前

作者你好,我也遇到了同样的问题,能否指点一下

Z
zaojiao#4·12 年前

params 就是json数据呀 你可以自己拼 var params = {title: 'Cleaning Supplies', supplies: ['mop', 'broom', 'duster']}; 不过一般都是自己去后台处理完之后,后台返回的json对象

H
hsh075623201#5·11 年前
引用 zaojiaoparams 就是json数据呀 你可以自己拼 var params = {title: 'Cleaning Supplies', supplies: ['mop', 'broom', 'du...

@zaojiao 我的需求是 EJS模板中 JS 的部分 如何获取 后台传过来的params???在后台我的params已获取,但还是感谢你的回答。

D
DevinXian#6·11 年前

这个直接使用变量就OK了,不需要特殊处理啊...<% code block %>或<%= exp%>等等...

Z
zaojiao#7·11 年前

最终生成的时候 render里边的参数 一项不就是 要传入模板的json对象嘛 后台到前端 一般就ajax请求返回吧 可能我没太理解你的意思。。

A
ArronYR#9·11 年前

QQ截图20150128100635.png

H
hsh075623201#10·11 年前

我描述下场景: 首先,render进来一串json, 然后,需要利用这串json进行图表展示, 那么就需要在JS中进行数据绑定之类的。难道都写在<%%>中或者只能改方案(JS中异步请求)???

我想能否render进来的参数 直接在EJS中的js部分获取,然后进行数据绑定,进行图表展示。 @zaojiao @DevinXian @luoyjx @ArronYR 感谢解答!

H
hsh075623201#12·11 年前
引用 luoyjx@hsh075623201 图表的话你考虑下用异步的呗,我之前用highchart用的异步请求,jquery的getJSON

@luoyjx 其实只是想问问有没有方法,我现在也是异步取得。

H
hsh075623201#13·11 年前

@nswbmw 恩 好的 谢谢!

D
DevinXian#14·11 年前

可以啊,render其实就是一个模板替换成html的过程,这个过程中的数据处理和前台没有任何关系,所以写进前台js部分,完全没问题

H
hsh075623201#15·11 年前
引用 DevinXian可以啊,render其实就是一个模板替换成html的过程,这个过程中的数据处理和前台没有任何关系,所以写进前台js部分,完全没问题

@DevinXian 那请问如何写呢??

假设 render("demo",{"name":"test"})

EJS:我知道<%=name%>可以展示

但是:EJS 中如何获取这个name值呢??

J
jx-zhou#16·11 年前

这样写不可以吗?

H
hsh075623201#17·11 年前
D
DevinXian#18·11 年前
引用 hsh075623201@jx zhou 好像不行 。。。。

@hsh075623201 不可能不行,只要是内嵌的肯定行啊

J
jx-zhou#19·11 年前
引用 hsh075623201@jx zhou 好像不行 。。。。

@hsh075623201 不行的话,是怎么个不行法,报错吗?

J
jx-zhou#21·11 年前
引用 hsh075623201@jx zhou 恩 报错

@hsh075623201 贴代码看看

X
xuyuan923#22·11 年前

不知道这是不是你要的: 后端node可以这样写:

app.post('/xxx',function(req,res){
    res.json({params:params})
});

前端获取js这样写:

$.ajax({
	type: 'POST',
	url:'/xxx'
	}).done(function(results){
	console.log(results); //=>params
})
D
dayuoba#23·11 年前
H
hsh075623201#24·11 年前
引用 jx-zhou@hsh075623201 贴代码看看

@jx-zhou 已解决 少了引号

H
hsh075623201#25·11 年前
Z
zifenglingyun#26·9 年前
参与回复
登录后即可参与回复。登录