Javascript JTemplate中的转义字符串

Javascript JTemplate中的转义字符串,javascript,jquery,jtemplates,Javascript,Jquery,Jtemplates,我有一个JTemplate字符串,看起来像这样 <a class="add" href="#" onclick="javascript:myfunction('{$T.Properties.Title}')" > 当参数$T.Properties.Title是一个包含单引号字符的字符串时,此代码将中断 我可以在传递参数值时使用双引号字符,但我的代码将因双引号而中断 如何对输入字符串进行转义,以便我的代码适用于包含单引号和双引号的字符串?创建对象时,需要使用反斜杠转义引号: P

我有一个JTemplate字符串,看起来像这样

<a class="add"  href="#" onclick="javascript:myfunction('{$T.Properties.Title}')" >

当参数$T.Properties.Title是一个包含单引号字符的字符串时,此代码将中断

我可以在传递参数值时使用双引号字符,但我的代码将因双引号而中断


如何对输入字符串进行转义,以便我的代码适用于包含单引号和双引号的字符串?

创建对象时,需要使用反斜杠转义引号:

Properties = {Title: 'I\'m lovin\' my quotes'};
编辑:

根据你的评论:


遗憾的是,无法控制源头(JSON来自第三方 聚会场所

您可以尝试使用
setTemplate(s,[],{filter\u params:true});

据了解,它正在使用escapeHTML,但我还没有尝试过,也不知道它是如何工作的

请参阅有关使用
筛选数据转义HTML的问题:

或者在收到JSON对象后尝试转义引号。 我相信在PHP中,您可以使用
json\u encode
——请参见此处:


这里描述的其他解决方案:

我也有同样的问题,最后我做的是在java脚本中转义引号

下面是我的代码

在模板中:

$('#content').setParam('getUrl', getUrl);
在HTML中;在模板内部

href="{$P.getUrl($T.RESULTS.URL)}"
JS方法:

function(theLink){
  return theLink.replace(/\"/g, "%22");

  //If you want to escape all the characters use the following
  return escape((theLink))
}

干杯。:)

遗憾的是,无法控制来源:(JSON来自第三方网站。