关于在javascript 中使用jsp的el表达式的问题

在springMVC的ModelAndView对象中存放了一个名为dataJson的字符串在作用域中,然后控制器会跳转到一个名为newFile.jsp的页面,在该页面中通... 在spring MVC 的ModelAndView 对象中存放了一个名为dataJson的字符串在作用域中,然后控制器会跳转到一个名为newFile.jsp的页面,在该页面中通过el表达式能取出ModelAndView对象中存放的dataJson中的值,通过javascript 的eval函数将作用域中取出的值转换为json对象成功,但是通过在javascript中声明 变量 var jsonData = “${dataJson}”; 执行后报错Uncaught SyntaxError: Unexpected identifier 通过chrome 浏览器的console查看var jsonData 中有值 但是下方有一条红线,应该是格式不正确引起的,但是我将这串数据复制下来,在chrome 的控制台中通过eval() 函数将该字符串转换成对象是成功的。后台用的是json—lib 将对象中的属性和值转换成json格式的字符串,为什么通过 var jsonData = “${dataJson}”;的方式取值会出现格式不正确的现象,开始以为是格式拼错了,因为有部分是自己手写的,只是对象转换json的时候用的是json-lib。 展开
 我来答
Ic_wolf
2015-08-23
知道答主
回答量:16
采纳率:0%
帮助的人:10.7万
展开全部
你多加了一对引号,应改为 var jsonData = ${dataJson};

一般json会带有双引号,如 {a:"abc",b:"1122"},这里面的双引号会与你写的双引号冲突。
另外当${dataJson}为空时还会继续报Uncaught SyntaxError,一般我会写成类似这样${empty dataJson?"fasle":dataJson},数值写成${dataJson}-0
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式