将salesforce的值传递给javascript时,我可以轻松完成 var test ='{!myname}'; 但是我怎么能逃脱这一点,以便我可以用像单引号这样的符号来处理名字? 我注意到String.escapeSingleQuote存在,但只能在类中使用而不能在vfpage中使用
答案 0 :(得分:2)
检查"encoding functions"的范围(页面底部)。
var test = '{!JSENCODE(myname)}';
可能是最好的。这些函数的帮助参考说它们只能在按钮/链接中工作,但我在VF页面上多次使用它们。实际上,它们是strengthening your code against XSS etc attacks的推荐方式。
你也可以在任何地方使用<apex:outputField>
,例如通过id获取字段的内容。默认情况下,大多数输出文本数据的标记都设置为escape="true"
。