el表达式在js中有时需要加引号才可以用,何时需要加引号,何时不需要加引号
2018-01-03 19:28
302 查看
本以为js是弱语言,对语言的要求不高,但是今天遇见一个坑,在js代码中编写el表达式,却一直没反应,代码如下
在此代码中,接收服务器返回的msg信息,用el表达式取值,却一直没有反应,应该在el表达式两边加引号,如下:
然后就可以顺利取值了.
那么为什么这次需要加引号才有作用,我们先看一下
浏览器端的源代码
$(function(){
var msg = "ip不正确";
if(msg!=null && msg != ''){
alert(msg);
}
});
服务器给浏览器发送的是el表达式取值后的结果,也就是说el表达式是在服务器端完成的解析,如果el表达式的取值是字符串的话,如果不加引号,那么响应到浏览器的源码为:
是错误的js格式,
所以el表达式的取值如果是字符串的话就必须加上引号,如:
var msg = "ip不正确"
才可以正常显示,
如果el表达式的值为对象或数值,就不用加引号,
这个原理是不是类似在mybatis文件中${}和#{}的区别,
${}是取值,不带引号,
#{}自动带引号,把值转换成字符串
$(function(){ var msg = ${msg}; if(msg!=null && msg != ''){ alert(msg); } });
在此代码中,接收服务器返回的msg信息,用el表达式取值,却一直没有反应,应该在el表达式两边加引号,如下:
$(function(){ var msg = "${msg}"; if(msg!=null && msg != ''){ alert(msg); } });
然后就可以顺利取值了.
那么为什么这次需要加引号才有作用,我们先看一下
浏览器端的源代码
$(function(){
var msg = "ip不正确";
if(msg!=null && msg != ''){
alert(msg);
}
});
服务器给浏览器发送的是el表达式取值后的结果,也就是说el表达式是在服务器端完成的解析,如果el表达式的取值是字符串的话,如果不加引号,那么响应到浏览器的源码为:
var msg = ip不正确
是错误的js格式,
所以el表达式的取值如果是字符串的话就必须加上引号,如:
var msg = "ip不正确"
才可以正常显示,
如果el表达式的值为对象或数值,就不用加引号,
这个原理是不是类似在mybatis文件中${}和#{}的区别,
${}是取值,不带引号,
#{}自动带引号,把值转换成字符串
相关文章推荐
- js函数写法一个需要注意的问题(如果不需要做js压缩优化则可以不用注意)
- 今天学习了一下,CS代码按我们的要求加载前台代码需要的JS,感觉很不错【值可以按我们的需要的加载】
- 所有的类都需要导包才能使用,除了两种情况不需要导包就可以使用
- 图书购买系统,本地添加购物车(不需要登录一样可以添加购物车,结算时需要登录)
- 控件有时需要声明,有时不需要声明的原因!
- Eclipse是需要jre还是jdk?。Eclipse原来根本不需要jdk,只要jre就可以了。
- html标签的属性可以用双引号、单引号或无引号, js语句的分号可以不要------真任性啊
- 这篇文章主要介绍了js使用post 方式打开新窗口的相关资料,需要的朋友可以参考下
- 写js代码的时候,使用el表达式注意用引号
- 快速整合TOMCAT6.0.14+IIS6.0 不需要写什么注册表 将本人切身体会写出 希望可以帮到需要的人
- cors跨域 可以让js直接访问接口而不需要jsop等跨域操作
- jsp中使用EL表达式并且在js中使用该值需要注意的地方
- 在使用JS编程中,有时需要在一个方法返回两个个或两个以上的数据
- 用js函数处理事件时,有时候可能因为页面部分组件不需要显示,但仍需要执行js,会有报错,但是不想暴露页面,是业务正常进行。。。。
- (编程解决)List和Hashtable都是可以存储数据的,可为什么有时选择List,有时需要Hashtable,这两个有什么区别?
- JS 截取字符串substr 和 substring方法的区别,需要的朋友可以参考下,根据需要自行选择。
- List和Hashtable都是可以存储数据的,可为什么有时选择List,有时需要Hashtable,这两个有什么区别
- c# asp.net webform web页面打印,可以控制需要打印和不需要打印的位置
- js代码中 何时加入引号,何时不加
- 现在很多的手机应用,都可能会直接嵌入一个web页面。这样做的好处:一个是功能更新方便,维护起来容易,只需要维护服务器的页面即可,不需要更新客户端;另一个是功能通用,不仅Android可以用,iOS也可