我有一个jquery token tagit插件,我想绑定到paste事件以正确添加项目。
我可以像这样绑定到paste事件:
.bind("paste", paste_input)
..。
function paste_input(e) {
console.log(e)
return false;
}
如何获取实际粘贴的内容值?
发布于 2012-07-23 09:26:42
有一个在现代浏览器中工作的onpaste事件。您可以使用clipboardData
对象上的getData
函数访问粘贴的数据。
$("#textareaid").bind("paste", function(e){
// access the clipboard using the api
var pastedData = e.originalEvent.clipboardData.getData('text');
alert(pastedData);
} );
请注意,从jQuery 3开始,bind和unbind已被弃用。首选调用是on。
所有现代浏览器都支持Clipboard API。
发布于 2012-07-23 09:30:39
这个怎么样:http://jsfiddle.net/5bNx4/
如果您使用的是jq1.7等人,请使用.on
。
行为:当你在第一个文本区域输入或paste
任何东西时,下面的teaxtarea就会捕捉到这一点。
休息吧,我希望这对事业有帮助。:)
有用的链接=>
How do you handle oncut, oncopy, and onpaste in jQuery?
编辑:
.on()
中的事件列表应以空格分隔。参考https://api.jquery.com/on/
代码
$(document).ready(function() {
var $editor = $('#editor');
var $clipboard = $('<textarea />').insertAfter($editor);
if(!document.execCommand('StyleWithCSS', false, false)) {
document.execCommand('UseCSS', false, true);
}
$editor.on('paste keydown', function() {
var $self = $(this);
setTimeout(function(){
var $content = $self.html();
$clipboard.val($content);
},100);
});
});
发布于 2014-06-25 02:08:28
我最近需要完成类似的事情。我使用下面的设计来访问paste元素和值。jsFiddle demo
$('body').on('paste', 'input, textarea', function (e)
{
setTimeout(function ()
{
//currentTarget added in jQuery 1.3
alert($(e.currentTarget).val());
//do stuff
},0);
});
https://stackoverflow.com/questions/11605415
复制相似问题