0

当有人粘贴带有 URL 的文本时,我使用脚本来检测文本中的 url。

所以我使用这个脚本:

$("#post").bind('paste', function(){

   var $ptext = $('textarea#post').val();
   var regexText = /^http:\/\/www$/;
   if(regexText.test($ptext))
   {
    alert('URL DETECTED');
   }
});

但是当我重新加载页面并第一次粘贴文本时,脚本什么也不做,我不得不再次重新粘贴文本,然后脚本就可以工作了。

我该如何解决这个问题?

4

1 回答 1

0

我不知道为什么,但出于某种原因 .bind() 需要 setTimeout(function(){ //现在执行 textarea val() 调用;}, 100); 为了访问更新的粘贴事件...但是如果您使用 .on() 代替,它将在没有 setTimeout 调用的情况下工作

这是一个工作示例,展示了如何在任何一种情况下实现这一点

感谢@Ohgodwhy

于 2012-08-08T16:14:01.060 回答