Я застреваю с небольшой проблемой парсинга carrage возврат в текстовой области.
Код jQuery
$.fn.escapeHtml = function() {
this.each(function() {
$(this).html(
$(this).html()
.replace(/"/g,""")
.replace(/&/g,'&')
.replace(/</g,'<')
.replace(/>/g,'>')
.replace(/'/g,''')
// For converting carrage return (enter key) to br
.replace(/(\r\n|\r|\n)/g, '< br >')
.replace(/183/g,'·')
);
});
return $(this);
}
})(jQuery);
В Firefox это работает и дает вывод как
<big>Heading</big><br>Test Line 1<br>Test Line 2<br>Test Line 3
В Internet Explorer это не работает вообще.. Как я фиксирую это в IE. Мой вывод intented похож на это
<big>Heading</big><br>Test Line 1<br>Test Line 2<br>Test Line 3
Заранее спасибо...
Попробуйте заменить:
.replace(/(\r\n|\r|\n)/g, '< br >')
на:
.replace(/(\n\n|\r|\n)/g, '< br >')
Обратите внимание, что в текстовом поле они оба сводятся к \ n
, поэтому вам нужно заменить их двумя, например, \ n \ n
.