1

将值从 salesforce 传递给 javascript 时,我可以简单地做 var test = '{!myname}'; 但是我怎样才能逃避这个,以便我可以用单引号之类的符号来处理名称?我注意到 String.escapeSingleQuote 存在,但只能在类中使用,不能在 vfpage 中使用

4

1 回答 1

2

检查“编码功能”的范围(页面底部)。

var test = '{!JSENCODE(myname)}'; 

可能是最好的。这些功能的帮助参考说它们只在按钮/链接中工作,但我在 VF 页面上使用过几次。事实上,它们被推荐用于加强您的代码以抵御 XSS 等攻击

例如,您还可以<apex:outputField>在任何地方使用并通过 id 获取字段的内容。默认情况下,大多数输出​​文本数据的标签都已escape="true"设置。

于 2013-06-10T22:22:59.943 回答