2

所以我一直在尝试用 jQuery 中的 .html() 函数解码字符串,除了在 IE 上它工作得非常好......

这是我的字符串:

ééé\r\nààà

我希望这是:

ééé\r\nààà

我目前在 .html() 之后使用 IE:

ééé ààà

所以这在 FF 和 Chrome 上看起来不错,但在 IE 上所有换行符都被删除了。我发现一篇文章(http://web.student.tuwien.ac.at/~e0226430/innerHtmlQuirk.html)解释问题出在 .html() 函数使用的 .innerHTML ...

我真的很惊讶没有找到关于这个的话题。有什么解决办法吗?也许做一个特定的功能来在 IE 上解码?

更多这里是代码:

var itemDescription = "ééé\r\nàà&#224";
$('.feeds').find('textarea.description[ifid="' + ifid + '"]').html(itemDescription);
4

2 回答 2

2

尝试这个:

 var itemDescription = "ééé\\r\\nàà&#224";
于 2013-10-23T10:16:29.410 回答
0

实际上我发现的一个解决方案是做这样的事情:

itemDescription = itemDescription.replace(/(\r\n|\r|\n)/g, '________BREAK________');
var decodedDescription = $("<div>").html(itemDescription).text();
decodedDescription = decodedDescription.replace(/________BREAK________/g, '\r\n');
于 2013-10-23T12:35:04.867 回答