在Salesforce的开发中,有时候需要在对象中插入记录,其中有的字段需要插入Html,但是对于输入Html的域,大多数框架和网站都需要做Html的转义处理,防止XSS或者SQL注入攻击。有时候我们却需要取消这个Html转义的保护机制,考虑到有些需求,比如:博客网站,一些需要发表文章的网站,一般会给用户提供一个Html编辑器进行文章的编辑,最后存入数据库,而用户玩玩需要对文章的字体大小颜色等等进行订制,于是Html编辑器返回的文章便是一大串带Html代码的字符,存入数据库后,我们又需要读取出来,此时也不需要Html的保护,那么在Salesforce中我们可以如何做到这点。

1。   首先是InputField输入的验证,对于这种输入框,如果我们不需要转义,可以通过’html-’前缀来取消。

在Apex的文档中我们可以找到这么一段对于InputField的解释 This component supports HTML pass-through attributes using the "html-" prefix. Pass-through attributes are attached to the generated<input>tag. 但是文档中却找不到这样的一个例子,不过我们还是可以知道要表达的意思:

<apex:inputfield value="{!c.FirstName}" html-data-val="true"/>

对于上面的一段代码,如果不使用html-data-val=”true”,则便是默认的对输入框的值进行转义(如果里面有包含Html代码的话)。通过这个html-前缀,便关闭了这个输入框的转义机制。

2 。  在@RemoteAction标签的函数里面,有时候需要通过js请求控制器的函数,然后获取包含Html代码的字符串,但是这个也会被转义。

@RemoteAction
public static String RsMsg(String arg)
{
return '<p>Test</p>';//model.Remark__c;
}

js函数回调alert的结果如下:

被转义了,这个显然不是我们想要的结果,想要搞定这个问题,如下:我们需要在调用该RemoteAction函数带上{escape: false}这个参数

<script type="text/javascript">
function GetMsg()
{
CreateOrEditTestController.RsMsg(
"我是参数",
function(result,event)
{
if(event.status)
{
debugger;
alert(result);
$("#ShowMsg").append(result);
}
}
,
{escape: false}
);
}
</script>

默认的escape都是true,把这个参数赋个false,便可以:

最新文章

  1. 学习shell脚本笔记
  2. Java关键字总结及详解
  3. 2016第20周四java基础概念
  4. POJ 3169 Layout (差分约束)
  5. Ubuntu 取消sudo密码
  6. ASP.NET如何发布更新
  7. MAMP 环境下为 php 添加 pcntl 扩展
  8. sql server在一个字段相同值时,另一个字段结果拼接
  9. java中public与private还有protect的区别
  10. 从头到尾解析Hash表算法
  11. CSS的浮动和定位
  12. JSON数据格式转换
  13. c语言之数据类型
  14. mysql百万级全文索引及match快速查找
  15. 73. Set Matrix Zeroes 把矩阵同一行列的元素都改成0
  16. Caffe、TensorFlow、MXnet三个开源库对比+主流分类模型对比
  17. Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) Problem E (Codeforces 828E) - 分块
  18. 编码(encode和decode)
  19. MySQL Workbench的安全更新模式
  20. Android开发1——查找所需要出示权限的内容

热门文章

  1. uva 11381(神奇的构图、最小费用最大流)
  2. WPF 的拖拽操作(DragDrop)
  3. Popwindow系列
  4. 【BZOJ1495】[NOI2006]网络收费 暴力+DP
  5. Arduino开发版学习计划--蓝牙控制小车行走
  6. [Gradle] 针对不同的项目类型应用不同的 findbugs 配置
  7. Yii2 Model的一些常用rules规则,使用Validator验证
  8. c# 下三角实现 九九乘法口诀表
  9. cloud native
  10. Browser Cookie Limits