我想在输入字段中粘贴内容(我必须使用输入字段)并将粘贴的内容粘贴到其他输入.我的内容如下(复制所有行和粘贴):
1234
4567
4321
Run Code Online (Sandbox Code Playgroud)
在所有浏览器上以下链接工作正常,但IE
$editor.on('paste', function() {
var $self = $(this);
setTimeout(function(){
var $content = $self.val();
$clipboard.val($content);
},100);
});
Run Code Online (Sandbox Code Playgroud)
当使用IE并粘贴内容时,只有第一行(1234)将出现在第二个输入中.但是其他浏览器可以获得所有内容.
任何人都可以帮助我在这里谢谢,
IE无法处理新行,它只会粘贴在第一行并忽略其余行. 用空格替换换行字符就可以了.
clipped = clipped.replace(/(\r\n|\n|\r)/gm, " "); //replace newlines with spaces
Run Code Online (Sandbox Code Playgroud)
要克服将以下代码添加到您的脚本中,这将正常工作.
if (window.clipboardData) {
$('#editor').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
});
}
Run Code Online (Sandbox Code Playgroud)
在IE浏览器中检查这个JSFiddle.
参考: 允许在IE文本框中粘贴多行
编辑:删除console.log
| 归档时间: |
|
| 查看次数: |
2550 次 |
| 最近记录: |