jquery - IE 9 textarea 换行问题

标签 jquery html internet-explorer

<分区>

当我从 IE9 text area 字段中复制文本并将其粘贴到记事本中时,所有换行符都消失了,它作为单行出现,即使它有多于 1 行,如解释如下,此问题仅在 Ie9 中存在,与任何其他浏览器或其他版本的 IE 无关。

原文:

 abcdefghi
 jklmnopqr
 stuvwxyz

复制到记事本后,结果如下:

abcdefghijklmnopqrstuvwxyz。

有人知道为什么会这样吗?

谢谢。

最佳答案

您可以使用以下代码片段来替换当前要在 IE 上复制/剪切的剪贴板数据:

$('textarea').on("copy cut", function (e) {
    if (window.clipboardData) {
        var sel = this.value.substring(this.selectionStart, this.selectionEnd);
        window.clipboardData.setData("Text", sel.replace(/\n/g, "\r\n"));
        if(e.type === "cut") this.value = this.value.substring(0, this.selectionStart) + this.value.substring(this.selectionEnd);
        e.preventDefault();
    }
});

--DEMO--

关于jquery - IE 9 textarea 换行问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23493851/

相关文章:

javascript - 为什么 AJAX(每 x 次重新加载 div)不起作用?

jquery - 单击复选框提交表单

javascript - 使用 Javascript 跳过 HTTP 身份验证?

javascript - 如何删除 html 中追加的重复项?

javascript - EncodeURIComponent 抛出 "Object doesn' t 支持此属性或方法“错误(IE 8)

jquery - 使用jquery获取元素的可见高度而不是其实际高度

javascript - select2.js 获取事件目标

javascript - Web 的开源图形框架?

security - Internet Explorer 跨域 iframe 登录

javascript - 从 javascript 文件启动 Microsoft Edge 浏览器?