我正在使用富文本字段,在输入一些数据后,它以HTML字体显示,我也尝试了Escape : False
,但它无效。这是我的代码:
function GetDescription()
{
try
{
var assetId = '{!JSENCODE(objAsset.Id)}';
Visualforce.remoting.Manager.invokeAction(
'{!$RemoteAction.RemoterAssetDetailView.GetDescription}',
assetId ,
function(result, event) {
if(event.status)
{
var jobjAsset = JSON.parse(result);
var strDescription = '';
for(var i=0;i<jobjAsset.length;i++)
{
strDescription +=html_encode(jobjAsset[i][NameSpacePrefix + "DescriptionText__c"]);
}
j$("#divSpecification").html(strDescription);
}
else
{
}
},
{
escape: false
}
);
}
catch(e)
{
//alert(e);
}
答案 0 :(得分:0)
问题的一个可能答案是由@bjornd创建的这个非常简单的函数,该函数可用right here。 函数处理基本的HTML特殊字符,应该解决你的问题。
编辑:escape
函数已弃用,正如下面提到的@Zeke。这不再是正确的方法。
如果要从字符串中转义特殊字符,则应使用Javascript中的escape
函数。此函数基本上将任何特殊字符(如<
或>
)转换为十六进制转义序列。
escape('äöü'); // "%E4%F6%FC"
在您的情况下,将html_encode(jobjAsset[i][NameSpacePrefix + "DescriptionText__c"])
替换为escape(jobjAsset[i][NameSpacePrefix + "DescriptionText__c"])
以下是有关此escape
功能的Mozilla团队文档的a link。