CKEditor字符数

时间:2011-04-21 19:42:40

标签: javascript jquery count ckeditor character

首先,这个问题在这里回答:CKeditor character/word count但是所有答案都给出了断开的链接......因此没有回答。

使用CKEditor,如何使用jquery获取keyup上的字符数?

以下是 的工作原理,但 的工作原理:

<textarea id="newKnowledge_body"></textarea>
<script>
 $(function(){
      // this DOES work, fyi
      $("#newKnowledge_body").ckeditor();

      // this DOES NOT work
      $("#newKnowledge_body").keyup(function(){
          var len = $("#newKnowledge_body").val().length;
          alert(len);
      });
 });
</script>

我认为问题在于“keyup”事件。我这样提到它时没有得到任何回应......但我不知道还能用什么。

4 个答案:

答案 0 :(得分:1)

您需要在CKEditr上注册一个事件,如下所示:

editor.on( 'key', function( evt ){
   updateCount( evt.editor.getData() );       
}, editor.element.$ );

我还发现这个链接使用jQuery和css具有很好的字符数。 http://jsfiddle.net/VagrantRadio/2Jzpr/

答案 1 :(得分:1)

这是一个没有插件(不是最好的)的快速解决方案

var len = $("#cke_contents_message").children("iframe").contents().find("body").text().length;

[更新]更好的方式

var editor = $('YOUR_TEXT_AREA').ckeditorGet();
editor.on("instanceReady", function(){                    
    this.document.on("keyup", function(){
        var editorContent = $(editor.getData());
        var plainEditorContent = editorContent.text().trim();
        console.log(plainEditorContent);
        console.log("Length: "+plainEditorContent.length);
    });
});

答案 2 :(得分:0)

尝试使用.change()代替.keyup()

答案 3 :(得分:0)

试试这个插件,它对我有用http://www.n7studios.co.uk/2010/03/01/ckeditor-word-count-plugin/