【发布时间】:2014-12-06 04:43:06
【问题描述】:
是否有可能实现这样的目标:
HTML:
<p>ABC</p>
Output:
DEF
我问这个是因为我想制作一个电子邮件模板,其中 HTML 部分必须有<p>${__VCG__VAL__FIRST_NAME}</p>(其中${__VCG__VAL__FIRST_NAME} 是一个变量)。该变量稍后将被实际值替换。但是,用户不能在屏幕上看到它;相反,他们会看到${FIRST_NAME} 还有另一个限制:我不能将id 或class 属性赋予包含我要替换的单词的元素。
我最初在这里问了这个问题: CKEditor4: Make Text Differ from its HTML,但似乎没有人熟悉 CKEditor。因此,如果使用 CKEditor 有更简单的方法,那就更好了。
【问题讨论】:
-
我正在考虑制作关键字/
textdisplay: none,然后放一张图片覆盖之前有text的地方。这样一来,HTML 并没有改变,尽管这个具有CSS的特定页面的显示发生了变化,但是我不能这样做,因为没有唯一的id或class可供选择。 -
真的很难理解你的目标是什么以及为什么你不能在服务器上使用字符串替换方法
-
@charlietfl 我在一家 CRM 公司工作。我们帮助客户自动联系他们的客户,电子邮件广播是我们的特色之一。此文本编辑器供我们的客户为他们的客户制作电子邮件模板(通讯、促销等)。我们希望我们的客户制作,例如
Hi ${first_name} ${last_name}, blah blah blah,但是后面要替换为实际值的变量是${__VCG__VAL__FIRST_NAME}等。它更长,我们不想让我们的客户感到困惑。另外,它看起来不太好。但我们希望他们知道这是一个变量。希望对你有帮助 -
如果您正在制作模板,您将需要处理模板的东西(可能是服务器端)。正如@charlietfl 建议的那样,字符串替换可能是您最好的选择。如果您想包含变量,使用 ${first_name} ${last_name} 很好,只要您向客户指定哪些 var(占位符)名称是有效的及其格式。
-
您还没有确定您的确切问题,为什么不能在服务器上进行这些变量名翻译?
标签: javascript jquery css html templates