Line breaks won't display in textarea in IE

前端 未结 3 1456
庸人自扰
庸人自扰 2021-01-05 16:42

Using jQuery\'s .load() method I\'m loading text into a textarea. Works fine in Chrome & FF. As always, IE just has to be different and won\'t display the l

相关标签:
3条回答
  • 2021-01-05 17:17

    They're compatibility problems with IE when using innerHTML(). As Jquery's .html() and .load() methods both use innerHTML(), they by extension can result in some issues. One solution is to use .text() instead. If you want to load text into a <textarea> using AJAX and Jquery you need to do something like this:

    $('#textarea').post('data.php',function(data){
            $(this).text(data);
        })
    );
    
    0 讨论(0)
  • 2021-01-05 17:29

    I used kendoui grid in inline edit mode, for description field textare were applyed, the solution were for ie the inline style:

    <textarea style="white-space:pre-wrap;" name="' + options.field + '" ...
    

    And the following code in keydown event:

    if (event.keyCode == 13) {
            event.stopPropagation();
        }
    
    0 讨论(0)
  • 2021-01-05 17:34

    This is probably a line-ending issue. Are the line breaks in the text \ns or \r\ns? If they're just \ns try normalizing the text. You can do this with a bit of JavaScript:

    function normalizeNewlines(text)
    {
        return text.replace(/(\r\n|\r|\n)/g, '\r\n');
    }
    

    This is a solution that's worked for me in the past when doing essentially the reverse: I needed to take text out of a <pre> that could be pasted into !@#$ing Notepad and show up with the line breaks intact.

    0 讨论(0)
提交回复
热议问题