字符无法正确读取ajax响应

时间:2015-04-22 09:21:01

标签: javascript jquery ajax

我搜索了任何解决方案,但仍然没有帮助。这个问题与阅读角色有关。 如何读取来自ajax的字符响应?这是来自ajax的输出,作为JSON对象:

 ["label" : "Item1", "value" : "TOP & HEAD"] 

理想的输出应该是这样的:

 ["label" : "Item1", "value" : "TOP & HEAD"]

这是成功的功能:

success: function(data){
   // what code should be added so it can be read the character properly? 
   console.log(data);
   response(data);
}

需要建议..

4 个答案:

答案 0 :(得分:0)

试试这个,

success: function(data){
   // What code should be added so it can be read the character properly? 
   console.log(data);
   alert(data['label']);
   alert(data['value']);
}

您可以通过调用密钥来访问,例如

console.log(data['label']);

答案 1 :(得分:0)

如果您有权访问网络服务,则可以对其进行更改,使其不对文字进行编码。

否则,您可以执行this answer中建议的内容:

var decoded = $('<textarea />').html(data.value).text();

答案 2 :(得分:0)

看一下这篇文章: Decode &amp; back to & in JavaScript

基本上它说你有两个选择(在解析你的json之前):

1。)您只想更换放大器:

var decoded = data.replace(/&amp;/g, '&');

2。)您想要解码HTML字符:

var div = document.createElement('div');
div.innerHTML = data;
var decoded = div.firstChild.nodeValue;

答案 3 :(得分:0)

function decodeEntities(html){
    var str; 
    var temp= $("<p>");
    $(temp).html(html);
    str= $(temp).text()
    $(temp)=null;
    return str;
}

console.log(decodeEntities(data["value"]));