簡體   English   中英

jQuery - char計數器不適用於粘貼事件

[英]jQuery - char counter doesn't work with paste event

我寫了一個jQuery字符計數器,它在我鍵入時起作用,但在粘貼文本時不起作用。 該功能在粘貼時執行,但計數不會改變。 我不確定val()函數是否正確或是否與DOM同步。 有任何想法嗎?

 counter = function () {
     $j("strong#status-field-char-counter").text($j("#Panel1messagesmessage").val().length);
     alert('event');
 };


 $j("textarea").keyup(counter);
 $j("textarea").bind('paste', counter);
 $j("#Panel1messagesmessage").bind('copy', counter);
 $j("#Panel1messagesmessage").bind('delete', counter);

textarea內容可以通過多種方式進行更改,而不是嘗試捕獲所有內容,只需安裝一個每0.5秒檢查一次內容的例程,如

$(function() {
   window.charCount = 0;
   setInterval(function() {
      var c = $("textarea").val().length;
      if(c != window.charCount) {
        window.charCount = c;
        $("span").html(window.charCount); 
      }
    }, 500);
})

我通常將keyupchange結合使用

當文本框失去焦點時, change事件將觸發,但僅當該值在獲得焦點后被修改時才會觸發。

快速發揮:

 $("#textarea").change(function() { $("#status-field-char-counter").text($("#textarea").val().length); }).keyup(function() { $("#status-field-char-counter").text($("#textarea").val().length); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <p id="status-field-char-counter">here</p> <input id="textarea" type="text" /> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM