转义来自JSON的引号

时间:2015-12-26 22:53:35

标签: javascript jquery html json

我从JSON获取一些数据并将其作为自定义属性a-tag放入$("#div").append("<a href='#' data-info='" + value.info + "'>" + value.name "</a>"); 。单击此链接时,应显示以下信息:

<a href="javascript:void(0)" class="trends" data-wiki="Some "infos" with 'quotes'">Some text</a>

不幸的是,JSON可能包含一些破坏我的代码的引号:

{{1}}

如何逃避来自JSON的所有引用?

3 个答案:

答案 0 :(得分:3)

做得好。

var a = document.createElement('a');
a.setAttribute("href","#");
a.setAttribute("data-info",value.info);
a.appendChild(document.createTextNode(value.name));
$("#div").append(a);

完成;)

答案 1 :(得分:1)

使用jQuery,您可以使用attr

var $link = $('<a href="#" />').text(value.name).attr('data-info', value.info);
$("#div").append($link); 

答案 2 :(得分:0)

这是你想要的:

$("#div").append("<a href='#' data-info='" + value.info.replace("'", "\'") + "'>" + value.name "</a>");

但你应该像@Niet the Dark Absol的回答那样做