首先,这个问题在这里回答: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”事件。我这样提到它时没有得到任何回应......但我不知道还能用什么。
答案 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/