显示从AJAX调用中获取的特殊字符的问题

时间:2016-03-25 05:25:24

标签: javascript jquery html ajax

使用AJAX,我获取数据,我必须动态地将该数据作为行添加到html表中。

有些特殊字符未在表格中显示。但是,如果使用“alert”或html标签打印,它们目前会显示。

这是我的代码:

var mytext = '';
var color = "black";
for (t in events) {
    mytext += '<tr style="color:'+color+';">';
    mytext += '<td style="color:blue;"> <a onclick=\'load_iframe(' + events[t].event_id + ',"' + events[t].signature  +'");\'>';
    mytext += $('<div/>').html(events[t].signature).html();
    mytext += '</a> </td>';
    mytext += '<td>' + events[t].start_time + '</td>';
    mytext += '<td>' + events[t].end_time + '</td>';
    mytext += '</tr>';
}
$('#events_table > tbody:last').append(mytext);

表中显示的events [t] .signature的值是“venci \ u00f3_humano”。 如果我使用html / alert打印它,它会正确显示。 :venció_humano

有人可以告诉我如何解决这个问题吗?

非常感谢!

2 个答案:

答案 0 :(得分:2)

我认为你应该将字符编码放在页面的head标签中。

<meta charset="UTF-8">

由于

答案 1 :(得分:0)

以下代码正常工作。

var mytext = '';
var color = "black";
mytext += '<tr style="color:grey;">';
mytext += '<td style="color:blue;"> <a onclick=\'load_iframe(7 ,"venci\u00f3_humano");\'>';
mytext += $('<div/>').html('venci\u00f3_humano').text();
mytext += '</a> </td>';
mytext += '</tr>';
$('#events_table').append(mytext);

jsfiddle