我正在努力验证我的 tinymce 编辑器。目前我通过有效的字符数来验证它,但我想把它变成某种类似于字数的东西,因为这应该是一篇文章的正文。所以基本上他们不能提交只有几个字的文章。
目前我有这个
setup : function(ed) {
ed.onInit.add(function(ed, evt) {
tinymce.dom.Event.add(ed.getBody(), 'focusout', function(e, t) {
var con = tinyMCE.activeEditor.getContent();
var len = con.replace(/(<([^>]+)>)/ig,"").length;
if(len <=100){
$('.storyError').text('An artical has to have at least 100 words!');
}else{
$('.storyError').text(' ');
}
});
});
}
在我的初始化之后,这确实有效,我只想计算单词而不是字符。非常感谢您的帮助!
最佳答案
在这里,只需替换选择器并根据需要获取文本:
var count = 0;
function fn(){
count++;
return ' ';
}
var x= $('textarea').text().trim();
console.log(x);
x= x.replace(/[\s]+/ig,fn);
//x is now filtered out of extra spaces too !
var words = count+1;
count = 0;
console.log(words);
在你的情况下它将是:
var count = 0;
function fn(){
count++;
return ' ';
}
setup : function(ed) {
ed.onInit.add(function(ed, evt) {
tinymce.dom.Event.add(ed.getBody(), 'focusout', function(e, t) {
var con = tinyMCE.activeEditor.getContent().trim();
con = con.replace(/[\s]+/ig,fn);
//var len = con.replace(/(<([^>]+)>)/ig,"").length;
var words = count+1;
count = 0;
if(words <=100){
$('.storyError').text('An artical has to have at least 100 words!');
}else{
$('.storyError').text(' ');
}
});
});
}
或者让所有内容都在一行中使用这个(但它不会过滤掉多余的空格):
var words = con.trim().split(/\s+/).length;
关于javascript - 验证字数统计 tinymce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17127007/