javascript - ${} 模板文字 (ES2015) 与 JSP EL 语法冲突

标签 javascript java jsp ecmascript-6 el

${} 被 JSP 和 JS 使用,所以发生的事情是 JS 模板文字中的 ${} 在被编译成 servlet 之前被解释和删除。有没有一种方法可以让 Java 忽略 ${} 而无需使用 isELIgnored 完全关闭该功能?

const subject = 'world';
let greet = `hello ${subject}!` 

在浏览器中变成如下

const subject = 'world';
let greet = `hello !` 

这是我想出的最好的,但真的没有挖掘它有多丑。

<c:out value="var body = `pq_country=${country}&pq_population=${population}`;" escapeXml='false'/>

最佳答案

您可以在 ${} 前面放一个反斜杠,这样 JSP 就会忽略它(David Ford 通过 this article 发现)。

const subject = 'world';
let greet = `hello \${subject}!`

关于javascript - ${} 模板文字 (ES2015) 与 JSP EL 语法冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39229285/

相关文章:

javascript - Angular .js : replacing text

javascript - 动态脚本加载同步

java - 构造函数在java中使用多个数组

java - InternalViewResolver 在 Spring 中不工作

php - Javascript模拟在输入框中按下回车键

javascript - 如果选中所有复选框,则启用提交按钮

java - 禁用 SwipeRefreshLayout 会重置布局

java - RequestDispatcher.forward() 的树

java - JSP 视频流(使用 Servlet)

javascript - 在等待结果时禁用 HTML 按钮