问题描述
- JS中字符串拼接碰到EL表达式
-
是iframe中的src
我先写了function show1(lfmc){ alert(lfmc); var src=""; src=${ctx}+ "/houseInfoTj_getLfxxDetail.do?xqid=" +${xqid}+ "&xqcj=" +${xqcj}+ "&lfmc=" +lfmc; alert(src); $("#showIframe").attr("src",src); }
报错,ie说缺少对象,chrome说show1没定义
后来我改了下
function show1(lfmc){ alert(lfmc); var src=""; src="${ctx}/houseInfoTj_getLfxxDetail.do?xqid=${xqid}&xqcj=${xqcj}&lfmc="+lfmc; alert(src); $("#showIframe").attr("src",src); }
把EL表达式放到”“中就好了。
提问:JS中的字符串拼接时要用到el表达式有什么规则?
解决方案
URL后面跟参数就是使用&,而不是使用"&",比如:xxx?id=1¶m=3这样是正确的,xxx?id=1"¶m="3是错误的。
EL表达式取值问题:${xqid} 这样取出来,值不带引号,"${xqid}" 得到的是"值",带引号的。URL里面不能带"",带了就是非法的。
解决方案二:
拼接符是&,传递多个参数也用&隔开
解决方案三:
字符串拼接基本不用一些特殊表达式,很容易报错的
解决方案四:
规则就是要加引号,不加引号取不到值
解决方案五:
拼接符是&,传递多个参数也用&隔开
时间: 2024-09-21 16:15:35