无法获得粘贴事件的价值

时间:2017-11-22 10:27:01

标签: javascript html

我想检查文本框中的粘贴文本以验证它,但它始终为空白。

如何在用户粘贴文本时获取文字?

function alertandclear(obj) {
console.log('->' + obj.value);
obj.value = "";
}
<input type="text" onpaste="setTimeout(alertandclear(this),100)"/>

2 个答案:

答案 0 :(得分:3)

您正在致电$(document).on('click', 'button.editCategory',function(event) { var id = $(this).data('category'); editCategory(id); }); 而不是您应该参考setTimeout(alertandclear(this),100)中的功能,如下所示

&#13;
&#13;
setTimeout
&#13;
function alertandclear(obj) {
console.log('->' + obj.value);
obj.value = "";
}
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您必须在setTimeoutlink内传递函数引用或表达式。这就是我所做的。

document.getElementById("myInput").addEventListener("paste",function(){
          var element = this;
          setTimeout(function(){console.log(element.value);element.value='';},100,element);
   });
<input id="myInput" type="text" />