【问题标题】:jQuery onkeyup event in textarea that does not fires when nothing changetextarea中的jQuery onkeyup事件在没有任何变化时不会触发
【发布时间】:2010-04-20 21:17:17
【问题描述】:

我正在考虑一个检查按下的键值的函数,并且只接受最常见的字符,canc,enter,......因为我只需要基本的 ascii 字符集(不是ñ,č,中文字符, ...)。

或者在每次按键后检查值是否发生变化的函数。

但是 jQuery 真的没有针对这种情况的事件处理程序吗?

哦,应该是跨浏览器。

【问题讨论】:

    标签: onchange jquery onkeyup


    【解决方案1】:

    您可以尝试取消键,但它们可能只是粘贴。或者可能会找到一种通过脚本设置值的方法。最好的做法是在将值发送到服务器(或以其他方式进行操作)之前验证该值没有特殊字符。

    【讨论】:

    • 我没有考虑粘贴问题。你是对的。但我需要一个仅在 textarea 值更改时触发的事件。
    【解决方案2】:
    var oldval = $('textarea').val();
    $('textarea').live('mouseover', function() {
       if($(this).val() != oldval) {
          //do your thing here
    
          oldval = $(this).val(); //reassign oldval
       }
    });
    

    如果新值与旧值不同,这将在鼠标悬停时激活并执行您想要的任何操作。我还没有测试过,但我认为它也应该包括粘贴。

    【讨论】:

      猜你喜欢
      • 2013-08-22
      • 2017-08-25
      • 1970-01-01
      • 2016-01-04
      • 1970-01-01
      • 2013-02-08
      • 1970-01-01
      • 2013-05-26
      • 2012-06-28
      相关资源
      最近更新 更多