javascript - 语言变量中的 Velocity.Quotes 和双引号

标签 javascript velocity dotcms

我在 dotCMS 中有多种语言。语言变量可能包含单引号或双引号。 通过用引号将它们括起来,我可以在我的 javascript 中访问这些变量。

var text = "$text.get('变量名')";

但是如果变量包含相同的引号,js 代码会崩溃。 当变量包含/时,正则表达式也不起作用。 我使用 es5,所以模板字符串不是一个选项。

我该如何解决这个问题?

最佳答案

所以 ${text.get('variable_name') 只返回一个 java.lang.String,这意味着您可以访问所有 string.replace() 和 string.replaceAll() 方法。下面是一个(未经测试的)示例。

var text = "${text.get('variable_name').replace("\"","\\\")}";

dotCMS 还提供了一个 javascript-ify 实用程序,例如:

var text = "$UtilMethods.javascriptify(${text.get('variable_name')})";

关于javascript - 语言变量中的 Velocity.Quotes 和双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45773452/

相关文章:

velocity - 如何构造动态变量NAMES?

java - 无法安装 dotCMS

javascript - 如何用velocity模板语言调用ajax调用?

javascript - Phonegap应用程序使用localstorage函数错误

javascript - 智能感知 Javascript - Visual Studio 2017

java - 如何获得准确的速度日期差

c++ - 太阳系模拟项目(velocity verlet 帮助)

elasticsearch - 将 dotCMS 集群连接到外部 elasticsearch

javascript - Angular UI-router 深度路由

javascript - 是否有允许从内部调用 javascript 的 Javascript Scheme 解释器?