htmlEncode和htmlDecode正在消除空格和换行符?还有其他选择吗?

时间:2013-02-27 10:13:18

标签: javascript jquery

我们的网络应用程序共享代码。为了分享正确的代码,我们使用了htmlEncode和htmlDecode,以便所有htmlTags在通过http协议传递时都能正确处理,如下所示

     htmlEncode = function (value) {
     if (value) {
         return $('<div />').text(value).html();
     }
     else {
         return '';
     }
 },
htmlDecode = function (value) {
    if (value) {
        return $('<div />').html(value).text();
    }
    else {
        return '';
    }
},

现在,如果用户在代码中提供了更多空格,那么它将被转换为单个空格(当然这不是一个大问题)。

但是这种实现的问题是,如果用户在代码共享部分中单击 EnterKey 两次或三次,那么它不会被视为原样,但输出在一行中如下所示:

UserInput enter image description here

实际输出 enter image description here

预期输出 enter image description here

任何解决方案?

1 个答案:

答案 0 :(得分:0)

这是预期的,因为这正是对你的值应该有的.text()效果。我认为在这种情况下你不应该使用.text