繁体   English   中英

Datatable Jquery特殊字符编码和解码为HTML

[英]Datatable Jquery special character encoding and decoding to HTML

我发现当我们使用API​​函数从表对象中获取值时,不会解码html特殊字符(例如“&”) ,而是将它们转换为ASCII或Unicode形式。 这是我对dataTable的简单初始化。

var otable = $('#vtable').DataTable({
        "dom": '<"top"lBf<"clear">>rt<"bottom"ip<"clear">>'
}); 

看到这个小提琴

在将html特殊字符传递到数据处理之前,最好的解决方案是什么?

编码HTML实体:

var valEncoded = $('<div>').text(val).html();

解码HTML实体:

var valDecoded = $('<div>').html(val).text();

有关代码和演示,请参见此示例

有关如何在项目中使用它的演示,请参见更新的jsFiddle

使用Stackoverflow的答案 ,问题的解决方案是下面的功能,用于从一行数据中解码html字符。

function decodeHtml(str) {
    var map =
    {
        '&amp;': '&',
        '&lt;': '<',
        '&gt;': '>',
        '&quot;': '"',
        '&#039;': "'"
    };
    return str.replace(/&amp;|&lt;|&gt;|&quot;|&#039;/g, function (m) { return map[m]; 
    });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM