如何解决IE11 将文本字符串粘贴到文本框中
知道为什么 IE11 不允许我将字符串块粘贴到页面表单的文本框中吗?我尝试过 Edge 和 Chrome,没有问题。
例如,如果我从文本文件或 Excel 中复制多个格式化为列的字符串,并尝试将其粘贴到 IE11 中表单上的文本字段,则只会粘贴第一个字符串。另一方面,所有字符串都被粘贴到 Edge 或 Chrome 中。
我正在尝试复制此文本:
当粘贴到 IE11 时,我会得到这个:
但是当我将它粘贴到 Edge 或 Chrome 中时,我得到了这个:
不知道 IE11 中是否有一些必须更改的设置?
解决方法
这似乎是 Internet Explorer 浏览器中的一个已知问题。
当您尝试从 Excel 复制列时,其中包含换行符。输入类型文本不支持换行符,IE 浏览器将其删除。由于这个原因,全文不会被解析,它只粘贴第一个字符串。
有一些解决方法可以解决 IE 浏览器的这个问题。
- 您可以尝试使用 Textarea 而不是 Input textbox。
- 您可以尝试使用一些 JS/Jquery 代码将所有换行符替换为空格。
示例:
Jquery 代码:
$(document).ready(function(){
if (window.clipboardData) {
$('#txt1').bind('paste',function (e) {
var clipped = window.clipboardData.getData('Text');
clipped = clipped.replace(/(\r\n|\n|\r)/gm," "); //replace newlines with spaces
$(this).val(clipped);
return false; //cancel the pasting event
});
}
});
HTML 代码:
<label for="txt1">Enter text:</label>
<input type="text" id="txt1" name="txt1" style="width:200px"><br><br>
IE 11 中的输出:
参考文献:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。